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

相关推荐
星火开发设计11 小时前
类型别名 typedef:让复杂类型更简洁
开发语言·c++·学习·算法·函数·知识
Gorgous—l11 小时前
数据结构算法学习:LeetCode热题100-多维动态规划篇(不同路径、最小路径和、最长回文子串、最长公共子序列、编辑距离)
数据结构·学习·算法
Hello_Embed12 小时前
libmodbus 移植 STM32(基础篇)
笔记·stm32·单片机·学习·modbus
●VON12 小时前
Flutter for OpenHarmony 21天训练营 Day03 总结:从学习到输出,迈出原创第一步
学习·flutter·openharmony·布局·技术
香芋Yu13 小时前
【大模型教程——第四部分:大模型应用开发】第1章:提示工程与上下文学习 (Prompt Engineering & ICL)
学习·prompt
LYS_061813 小时前
寒假学习10(HAL库1+模数电10)
学习
runningshark13 小时前
【项目】示波器学习与制作
学习
€81113 小时前
Java入门级教程24——Vert.x的学习
java·开发语言·学习·thymeleaf·数据库操作·vert.x的路由处理机制·datadex实战
自可乐13 小时前
n8n全面学习教程:从入门到精通的自动化工作流引擎实践指南
运维·人工智能·学习·自动化