ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

mosquitto之arm编译

2020-05-08 19:06:25  阅读:641  来源: 互联网

标签:oe arm 编译 mosquitto 链中 linux gnueabi


编译前工作

        请安装arm交叉编译工具链,然后参考mosquitto之linux编译中CMake的使用方法,注意需要修改如下配置选项:

  • CMAKE_AR,指定到交叉编译工具链中的ar程序,例如:/home/crosstool/sysroots/x86_64-oesdk-linux/usr/bin/arm-oe-linux-gnueabi/arm-oe-linux-gnueabi-ar
  • CMAKE_CXX_COMPILER,指定到交叉编译工具链中的g++程序,例如:/home/crosstool/sysroots/x86_64-oesdk-linux/usr/bin/arm-oe-linux-gnueabi/arm-oe-linux-gnueabi-g++
  • CMAKE_C_COMPILER,指定到交叉编译工具链中的gcc程序,例如:/home/crosstool/sysroots/x86_64-oesdk-linux/usr/bin/arm-oe-linux-gnueabi/arm-oe-linux-gnueabi-gcc
  • CMAKE_INSTALL_OLDINCLUDEDIR,默认为/usr/include。这里改为/opt/mosquitto-1.6.9-arm/include
  • CMAKE_INSTALL_PREFIX,指定mosquitio编译后的安装路径,默认为/usr/local。这里改为/opt/mosquitto-1.6.9-arm
  • CMAKE_LINKER,指定到交叉编译工具链中的ld程序,例如:/home/crosstool/sysroots/x86_64-oesdk-linux/usr/bin/arm-oe-linux-gnueabi/arm-oe-linux-gnueabi-ld
  • CMAKE_NM,指定到交叉编译工具链中的nm程序,例如:/home/crosstool/sysroots/x86_64-oesdk-linux/usr/bin/arm-oe-linux-gnueabi/arm-oe-linux-gnueabi-nm
  • CMAKE_OBJCOPY,指定到交叉编译工具链中的objcopy程序,例如:/home/crosstool/sysroots/x86_64-oesdk-linux/usr/bin/arm-oe-linux-gnueabi/arm-oe-linux-gnueabi-objcopy
  • CMAKE_OBJDUMP,指定到交叉编译工具链中的objdump程序,例如:/home/crosstool/sysroots/x86_64-oesdk-linux/usr/bin/arm-oe-linux-gnueabi/arm-oe-linux-gnueabi-objdump
  • CMAKE_RANLIB,指定到交叉编译工具链中的ranlib程序,例如:/home/crosstool/sysroots/x86_64-oesdk-linux/usr/bin/arm-oe-linux-gnueabi/arm-oe-linux-gnueabi-ranlib
  • CMAKE_STRIP,指定到交叉编译工具链中的strip程序,例如:/home/crosstool/sysroots/x86_64-oesdk-linux/usr/bin/arm-oe-linux-gnueabi/arm-oe-linux-gnueabi-strip
  • LIBPTHREAD,指定到交叉编译工具链中的libpthread.so库,例如:/home/crosstool/sysroots/x86_64-oesdk-linux/lib/libpthread.so.0
  • LIBRT,指定到交叉编译工具链中的librt.so库,例如:/home/crosstool/sysroots/x86_64-oesdk-linux/lib/librt.so.1
  • OPENSSL_CRYPTO_LIBRARY,指定到交叉编译工具链中的libcrypto.so库,若不使用OpenSSL则可以不设置,例如:/opt/openssl-1.1.1-arm/lib/libcrypto.so
  • OPENSSL_INCLUDE_DIR,指定到交叉编译工具链中的OpenSSL头文件目录,若不使用OpenSSL则可以不设置,例如:/opt/openssl-1.1.1-arm/include
  • OPENSSL_SSL_LIBRARY,指定到交叉编译工具链中的libssl.so库,若不使用OpenSSL则可以不设置,例如:/opt/openssl-1.1.1-arm/lib/libssl.so
  • PKG_CONFIG_EXECUTABLE,指定到交叉编译工具链中的pkg_config程序,例如:/home/crosstool/sysroots/x86_64-oesdk-linux/usr/bin/pkg-config
  • WITH_STATIC_LIBRARIES,指定是否同时编译出静态库,若打勾则除了动态库还会编译出静态库,默认不打勾(只编译动态库)。
  • WITH_TLS,指定是否包含SSL/TLS支持,默认打勾(若打勾,必须设置OpenSSL相关配置选项),若不想使用SSL,则不打勾。
  • WITH_TLS_PSK,指定是否包含TLS_PSK支持,默认打勾(若打勾,必须同时把WITH_TLS打勾),若不想使用SSL,则不打勾。

编译源码

        打开终端,输入命令:make,成功后,输入命令:make install,即可把mosquitto库安装到目录:/opt/mosquitto-1.6.9-arm
在这里插入图片描述

标签:oe,arm,编译,mosquitto,链中,linux,gnueabi
来源: https://blog.csdn.net/hezhanran/article/details/105966165

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有