交叉編譯gtsam時遇到的報錯信息如下:gtsam需要連接boost,
解決辦法:
1.重新編譯boost可解決。
2.自己搞定生成一個libicui18n.so.55。
由于我們的boost是公用的,因此1不太可能(我試過重新編譯完boost,在編譯gtsam完美通過)
首先下載GitHub - unicode-org/icu: The home of the ICU project source code.在這里可以直接下載需要的icu自取。
下載完解壓后如下:解壓完會有兩個文件icu4c和icu4j,分別是c++和java.
然后在同目錄下建立一個文件夾icupc,然后
-
mkdir icupc
-
cd ./icupc
-
../icu4c/source/runConfigureICU Linux/gcc
-
make
到此ubuntu上的icu編譯完成,但是需要交叉編譯,需要重新選則編譯內核。
1. cd icu4c
2.mkdir build
3../configure ?--disable-samples --disable-tests \
--with-cross-build=/home/ubuntu/Downloads/aarch64/icu-release-55-2/icupc \
--prefix=/home/ubuntu/Downloads/aarch64/icu-release-55-2/icu4c/source/build ?\
--host=aarch64-linux-gnu \
CC=/usr/local/gcc-linaro-5.3.1-2016.05-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu-gcc \
CXX=/usr/local/gcc-linaro-5.3.1-2016.05-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu-g++
切記--with-cross-build=/home/ubuntu/Downloads/aarch64/icu-release-55-2/icupc的路徑一定要是之前icupc的路徑,切記不要配錯。
4.make
5.make install
至此編譯完成
如果懶得編譯的人,可自取,我上傳了ubuntu? x_68_64和aarch64-linux-gnu下的庫,可直接下載0積分
https://download.csdn.net/download/mylovechao/90786934?spm=1001.2014.3001.5503