可通过一下办法解决:
1. 下载并交叉编译openssl库
下载网址:openssl库下载地址
将下载的文件拷贝到ubtun编译目录下解压
tar -zxvf openssl-3.3.0.tar.gz
cd openssl-3.3.0/
mkdir build_arm64
配置编译器环境参数,需要修改为自己编译器的路径,执行config
export PATH=$PATH:/home/forlinx/Templates/project/public/Tool/gcc-linaro-7.4.1-2019.02-x86_64_aarch64-linux-gnu/bin
./config no-asm shared no-async prefix=/home/forlinx/Templates/DDS/openssl-3.3.0/build_arm64 --cross-compile-prefix=aarch64-linux-gnu-
参数说明: no-asm: 在交叉编译过程中不使用汇编代码代码加速编译过程.原因是它的汇编代码是对arm格式不支持的。 shared:
生成动态连接库。 no-async: 交叉编译工具链没有提供GNU C的ucontext库 –prefix=:
安装路径,编译完成install后将有bin,lib,include等文件夹 –cross-compile-prefix=: 交叉编译工具
修改Makefile,去掉-m64参数
继续编译安装
make & make install
2. 修改FAST-DDS CMakeLists.txt:
指定OPENSSL库寻找路径,设为自己安装的路径
删除掉以前build的,重新交叉编译FAST-DDS,通过