关于ubuntu下交叉编译arrch64下的gtsam报错问题,boost中boost_regex.so中连接libicui18n.so.55报错的问题

交叉编译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,然后

  1. mkdir icupc

  2. cd ./icupc

  3. ../icu4c/source/runConfigureICU Linux/gcc

  4. 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

相关推荐
('-')18 小时前
《从根上理解MySQL是怎样运行的》第十章学习笔记
笔记·学习·mysql
hd51cc18 小时前
MFC学习笔记 对话框
笔记·学习·mfc
Radan小哥18 小时前
Docker学习笔记—day0010
笔记·学习·docker
im_AMBER18 小时前
Canvas架构手记 05 鼠标事件监听 | 原生事件封装 | ctx 结构化对象
前端·笔记·学习·架构
老神在在00118 小时前
Mybatis01
后端·学习·spring·java-ee·mybatis
Y***890818 小时前
Neo4j图数据库学习(二)——SpringBoot整合Neo4j
数据库·学习·neo4j
理人综艺好会19 小时前
MySQL学习之go-mysql
学习·mysql·golang
想要成为计算机高手19 小时前
π*0.6: 从实践中学习 -- 2025.11.17 -- Physical Intelligence (π) -- 未开源
人工智能·学习·机器人·多模态·具身智能·vla
黑客思维者19 小时前
LLM底层原理学习笔记:模型评估的基准测试体系与方法论
人工智能·笔记·神经网络·学习·模型评估·基准测试
小猪佩奇TONY19 小时前
OpenGL-ES 学习(17) ---- CubeMap 纹理
学习