《开发板 —— 交叉编译移植openssl、curl、mosquitto》

1.移植openssl

  1.下载openssl,我这边下载的是openssl-3.3.1,下载后在linux中解压。

  2. 配置编译安装(以下相关目录对应位置是随便写的,需要根据实际替换)

#./config no-asm --prefix=/home/3520/software/openssh-server/package --cross-compile-prefix=arm-hisiv400-linux-
no-asm 在交叉编译过程中不使用汇编代码代码加速编译过程。
no-shared  生成静态链接库。
--prefix 指定生成lib include bin目录的路径,不修改此项则默认为OPENSSLDIR目录。
-cross-compile-prefix指定编译器
#make
#make install

  报错:

  如果编译报错,并提示"m64"字样报错信息,多半是交叉编译器不支持m64选项。解决办法:
  修改Makefile ,若有-m32或-m64 字段,直接删除即可。

 

2.移植curl

  1.下载curl,我这边下载的是curl-8.9.1,下载后在linux中解压。

  2.配置编译安装(以下相关目录对应位置是随便写的,需要根据实际替换)

# ./configure --prefix=/home/xxxg/test/https_mqtt/curl-8.9.1/build --host=arm-linux-gnueabihf --with-ssl=/home/xxx/test/https_mqtt/openssl-3.3.1/build
# make
# make instll

  备注:--with-ssl对应的是opensslinstall后的lib以及include的位置。 

 

3.移植mosquitto

  1.下载mosquitto,我这边下的是mosquitto-2.0.18,下载后在linx中解压。

  2.修改Makefile

   屏蔽图中的相关代码。

  打开config.mk

  WITH_CJSON:=no   //我不需要cjson,所以选no
  WITH_SRV:=no   
  CFLAGS += -I /opt/mqtt-lib/openssl/ssl/include
  LDFLAGS += -L/opt/mqtt-lib/openssl/ssl/lib -lssl -lcrypto

  执行 make CC=gcc  (这边我默认就是交叉编译工具链,如果不是gcc修改成自己对应的交叉编译工具链)

  make install

 

posted @ 2024-08-14 16:51  一个不知道干嘛的小萌新  阅读(100)  评论(0编辑  收藏  举报