关于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

相关推荐
编程圈子16 分钟前
电机驱动开发学习21. R3_2 双相扇区电流采样与第三相重构
驱动开发·学习·重构
听雨入夜1 小时前
CMake构建学习笔记-libxml库的构建
笔记·学习
不在逃避q2 小时前
一步一步学习使用LiveBindings()TListView进阶使用(),打造天气预报程序
服务器·数据库·学习
知识分享小能手2 小时前
高等数学学习教程,从入门到精通,微分中值定理与导数的应用(5)
学习·机器学习·概率论
520拼好饭被践踏2 小时前
JAVA+Agent学习day25
java·开发语言·学习
魔术师Dix3 小时前
StartGame:Unity TDD 外部工程指南
学习·游戏·unity·c#·测试驱动开发
小弥儿3 小时前
GitHub今日热榜 | 2026-07-31:AI Agent工作流共享赛道升温
人工智能·学习·github
小蒋学算法12 小时前
算法-M个非重叠子数组最大和II-WQS二分学习
数据结构·学习·算法
重庆小透明15 小时前
带你从不同视角了解三大MQ
java·学习·spring·kafka·rabbitmq·rocketmq
~光~~15 小时前
【xv6学习】L0_环境配置
单片机·嵌入式硬件·学习