paho mqtt庫交叉編譯


阿里雲文檔可以參考

https://code.aliyun.com/edward.yangx/public-docs/wikis/user-guide/linkkit/Paho_MQTT_Guide/Paho_C

1】克隆:

git clone git@github.com:eclipse/paho.mqtt.embedded-c.git

2】修改CMakeLists.txt,設置編譯器和sysroot,增加以下語句:

set(CMAKE_SYSTEM_NAME Linux)
set(CMAKE_SYSTEM_PROCESSOR arm)

SET(CMAKE_C_COMPILER /home/a/Downloads/neoway-arm-oe-linux/sysroots/x86_64-oesdk-linux/usr/bin/arm-oe-linux-gnueabi/arm-oe-linux-gnueabi-gcc)

SET(CMAKE_CXX_COMPILER /home/a/Downloads/neoway-arm-oe-linux/sysroots/x86_64-oesdk-linux/usr/bin/arm-oe-linux-gnueabi/arm-oe-linux-gnueabi-g++)

set(CMAKE_SYSROOT /home/a/Downloads/neoway-arm-oe-linux/sysroots/armv7a-vfp-neon-oe-linux-gnueabi)

set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
set(CMAKE_FIND_ROOT_PATH_MODE_PACKAGE ONLY)

備注:

參考資料見CMake交叉編譯指南,,以下頁面搜索關鍵字Cross Compiling:

https://cmake.org/cmake/help/v3.0/manual/cmake-toolchains.7.html

source之后,找到有方編譯器命令CMAKE_C_COMPILER 絕對路徑:which arm-oe-linux-gnueabi-gcc

3】進入克隆包,進行編譯:

mkdir build.paho

cd build.paho

cmake ..

make

4】動態庫在:

build.paho/MQTTClient-C/src/libpaho-embed-mqtt3cc.so

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM