目录
一、下载源码
二、普通编译安装
三、交叉编译安装
四、安装成功示例
一、下载源码
git:https://github.com/eclipse/paho.mqtt.c/releases
下载稳定的C语言的发布版本
二、普通编译安装
注意:本人所述都是基于:CentOS Linux release 7.4 的操作,其它发行版本不保证一样!
解压源码后,进入解压后的主目录,如:cd paho.mqtt.c-1.3.0,按如下步骤执行命令:
- mkdir openssl_search_path_x86 创建openssl依赖路径
- cd openssl_search_path_x86 进入到刚刚新建的路径
- cp -r -d /home/workspace/openssl-1.0.2o_install_new/x86 ./ 把已安装过的openssl库文件和头文件拷贝到新建的路径
- cd ../ 回到主目录
- mkdir x86_build 创建cmake的build使用路径
- cd x86_build
- cmake -DPAHO_WITH_SSL=TRUE -DOPENSSL_SEARCH_PATH=/home/workspace/tools_3rdparty/paho.mqtt.c-1.3.0/openssl_search_path_x86 -DCMAKE_INSTALL_PREFIX=/home/workspace/tools_3rdparty/paho.mqtt.c-1.3.0/x86_install -DPAHO_BUILD_STATIC=TRUE .. 执行cmake,-DCMAKE_INSTALL_PREFIX 是指定paho最终的安装路径用的,-DPAHO_BUILD_STATIC表示需要生成静态库。
- make -j10 编译
- make install 安装
- 说明:因为我安装的paho需要用到openssl这个库,当然,如果没必要,可以选择不使用openssl,即:前4步可以省略,第7步cmake的时候不使用对应的编译选项-DPAHO_WITH_SSL和-DOPENSSL_SEARCH_PATH即可,-DOPENSSL_SEARCH_PATH的作用是指定openssl的安装路径,是在openssl没有安装在默认路径下时使用的。
- openssl的安装参考我另一篇文章:openssl的Linux编译与交叉编译
- debug版本的编译,需要在第7步中,加上一个编译选项:-DCMAKE_BUILD_TYPE=Debug
三、交叉编译安装
与普通编译步骤一样,只是需要指定一下交叉编译器
- mkdir openssl_search_path_x3399 创建openssl依赖路径
- cd openssl_search_path_x3399 进入到刚刚新建的路径
- cp -r -d /home/workspace/openssl-1.0.2o_install_new/x3399 ./ 把已安装过的openssl库文件和头文件拷贝到新建的路径
- cd ../ 回到主目录
- mkdir x3399_build 创建cmake的build使用路径
- cd x3399_build
- cmake -DPAHO_WITH_SSL=TRUE -DOPENSSL_SEARCH_PATH=/home/workspace/tools_3rdparty/paho.mqtt.c-1.3.0/openssl_search_path_x3399 -DCMAKE_INSTALL_PREFIX=/home/workspace/tools_3rdparty/paho.mqtt.c-1.3.0/x3399_install -DPAHO_BUILD_STATIC=TRUE -DCMAKE_C_COMPILER=aarch64-linux-gnu-gcc .. -DCMAKE_C_COMPILER表示指定自己的交叉编译器,自己提前安装配置好自己需要的交叉编译器。
- make -j10 编译
- make install 安装
四、安装成功示例
从图中可以看出,指定安装路径下的lib64下生成了动态库和对应的静态库文件,include下生成了头文件。
五、参考资料
https://blog.csdn.net/fangye945a/article/details/86095699
版权声明:本文来源CSDN,感谢博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/gpf0845531213/article/details/95961973
站方申明:本站部分内容来自社区用户分享,若涉及侵权,请联系站方删除。