编译 ICU

RV1126 开发板上部署 dotnet,因系统被裁剪过,dotnet 缺少 ICU 依赖库,因此需要手动编译 ICU,具体编译过程如下:

1.设置编译选项:

# 交叉编译器
export CC=/opt/rk/rv1126/bin/arm-buildroot-linux-gnueabihf-gcc
export CXX=/opt/rk/rv1126/bin/arm-linux-gnueabihf-c++ arm-linux-gnueabihf-c++
export AR=/opt/rk/rv1126/bin/arm-buildroot-linux-gnueabihf-ar

# 编译结果目录
export CROSS_ROOT=/home/hello/Download/icu-68.2.0.9/icu4c/source/installed

# 导出编译结果
export PKG_CONFIG_PATH=${CROSS_ROOT}/usr/lib/pkgconfig:${CROSS_ROOT}/usr/share/pkgconfig

2. 开始编译ICU:

# 进入编译目录
cd ./icu4c/source
mkdir arm-build

../source/runConfigureICU Linux/gcc --with-data-packaging=archive
# 注:必须添加 INCLUDE_UNI_CORE_DATA=1,这样相应的一些资源文件才能被加入 .dat 文件内,
#     make 后就可以在 icu4c/source/data/out/tmp 下看到新生成的 icudt68l.dat 文件
make INCLUDE_UNI_CORE_DATA=1
cd ..

# 开始编译
./configure 
       CXXFLAGS=-std=c++11
     --prefix="${CROSS_ROOT}/usr"
     --host=arm-linux 
     --with-sysroot="$CROSS_ROOT" 
     --with-cross-build='/home/hello/Download/icu-68.2.0.9/icu4c/source/arm-build' 
     --disable-samples 
     --disable-tests

你可能感兴趣的:(编程开发,嵌入式开发,c++,.net)