色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

ElfBoard技術貼|如何移植Mosquitto庫

ElfBoard ? 2024-12-13 15:34 ? 次閱讀

Mosquitto是一個開源的MQTT消息代理(broker)軟件,它遵循MQTT協議,允許設備之間高效交換消息。作為一個輕量級的消息中間件,Mosquitto支持QoS(服務質量)等級,支持發布/訂閱模式,適用于嵌入式系統和低功耗設備。其小巧的體積和簡潔的架構使其成為許多嵌入式應用的理想選擇,特別是在資源受限的嵌入式開發板上運行。

將Mosquitto移植到嵌入式開發板上,能夠使這些嵌入式設備具備完整的消息中間件功能。這對于需要進行遠程數據交換、設備控制和實時監控的物聯網項目尤其重要。比如,在智能家居或環境監控系統中,開發板通過Mosquitto與其他設備或系統進行通信,可以大大提升系統的靈活性和擴展性。

下面將和各位小伙伴詳細介紹如何將Mosquitto及其所依賴的OpenSSL、libuuid庫移植到ElfBoard的開發板,并在開發板上運行MQTT服務。

交叉編譯libuuid庫

1、下載地址https://sourceforge.net/projects/libuuid/files/

2、拷貝源碼到開發環境/home/elf/work目錄下解壓

elf@ubuntu:~/work$ tar zxvf libuuid-1.0.3.tar.gz elf@ubuntu:~/work$ cd libuuid-1.0.3/

3、創建install文件夾用來存放編譯安裝后的庫

elf@ubuntu:~/work/libuuid-1.0.3$ mkdir install

4、執行環境變量

elf@ubuntu:~/work/openssl-1.0.2g$ . /opt/fsl-imx-x11/4.1.15-2.0.0/environment-setup-cortexa7hf-neon-poky-linux-gnueabi

5、生成Makefile

elf@ubuntu:~/work/libuuid-1.0.3$ ./configure --host=arm-poky-linux-gnueabi --prefix=$(pwd)/install

6、編譯

elf@ubuntu:~/work/libuuid-1.0.3$ make

7、安裝

elf@ubuntu:~/work/libuuid-1.0.3$ make install

8、查看安裝目錄下的文件并打包

elf@ubuntu:~/work/libuuid-1.0.3$ cd install/ elf@ubuntu:~/work/libuuid-1.0.3/install$ ls include lib elf@ubuntu:~/work/libuuid-1.0.3/install$ tar cvjf libuuid.tar.bz2 *

交叉編譯OpenSSL庫

1、下載地址:https://openssl-library.org/source/old/1.0.2/index.html

2、拷貝源碼到開發環境/home/elf/work目錄下解壓

elf@ubuntu:~/work$ tar zxvf openssl-1.0.2g.tar.gz elf@ubuntu:~/work$ cd openssl-1.0.2g/

3、創建install文件夾用來存放編譯安裝后的庫

elf@ubuntu:~/work/openssl-1.0.2g$ mkdir install

4、生成Makefile

elf@ubuntu:~/work/openssl-1.0.2g$ ./config no-asm shared --prefix=$(pwd)/install

5、修改Makefile

注釋掉第62行;第63行去掉“-m64”

wKgZPGdb4dSAAaxKAAE4pivdWV8890.png

注釋掉第180行

wKgZPGdb4dyAbwYtAAEGb3084Pg727.png

6、執行環境變量

elf@ubuntu:~/work/openssl-1.0.2g$ . /opt/fsl-imx-x11/4.1.15-2.0.0/environment-setup-cortexa7hf-neon-poky-linux-gnueabi

7、編譯

elf@ubuntu:~/work/openssl-1.0.2g$ make

8、安裝

elf@ubuntu:~/work/openssl-1.0.2g$ make install

9、查看安裝目錄下的文件并打包

elf@ubuntu:~/work/openssl-1.0.2g$ cd install/ elf@ubuntu:~/work/openssl-1.0.2g/install$ ls bin include lib ssl elf@ubuntu:~/work/openssl-1.0.2g/install$ tar cvjf openssl.tar.bz2 *

交叉編譯Mosquitto庫

1、下載地址:https://mosquitto.org/files/source/

2、拷貝源碼到開發環境/home/elf/work目錄下解壓

elf@ubuntu:~/work/mosquitto-1.5.1$ tar zxvf mosquitto-1.5.1.tar.gz elf@ubuntu:~/work/mosquitto-1.5.1$ cd mosquitto-1.5.1/

3、創建install文件夾用來存放編譯安裝后的庫

elf@ubuntu:~/work/mosquitto-1.5.1$ mkdir install

4、執行環境變量

elf@ubuntu:~/work/mosquitto-1.5.1$ . /opt/fsl-imx-x11/4.1.15-2.0.0/environment-setup-cortexa7hf-neon-poky-linux-gnueabi

5、編譯

elf@ubuntu:~/work/mosquitto-1.5.1$ make WITH_SRV=no CFLAGS="-I /home/elf/work/openssl-1.0.2g/install/include -I /home/elf/work/openssl-1.0.2g/install/lib -I /home/elf/work/openssl-1.0.2g/install/include/openssl -I /home/elf/work/libuuid-1.0.3/install/include -I /home/elf/work/libuuid-1.0.3/install/lib" LDFLAGS="-L /home/elf/work/openssl-1.0.2g/install/lib -L /home/elf/work/libuuid-1.0.3/install/lib -lssl -lcrypto -luuid" CROSS_COMPILE=" "

6、安裝

elf@ubuntu:~/work/mosquitto-1.5.1$ make DESTDIR=$(pwd)/install install

7、查看安裝目錄下的文件

elf@ubuntu:~/work/mosquitto-1.5.1$ cd install elf@ubuntu:~/work/mosquitto-1.5.1/install$ ls etc usr elf@ubuntu:~/work/mosquitto-1.5.1/install$ tar cvjf mosquitto.tar.bz2 *

移植到開發板

將libuuid.tar.bz2、openssl.tar.bz2、mosquitto.tar.bz2壓縮包通過U盤拷貝到開發板根目錄下解壓。

root@ELF1:~# cp /run/media/sda1/libuuid.tar.bz2 / root@ELF1:~# cp /run/media/sda1/openssl.tar.bz2 / root@ELF1:~# cp /run/media/sda1/mosquitto.tar.bz2 / root@ELF1:~# cd / root@ELF1:/# tar mxvf libuuid.tar.bz2 root@ELF1:/# tar mxvf openssl.tar.bz2 root@ELF1:/# tar mxvf mosquitto.tar.bz2

將/usr/local/lib、/usr/local/bin、/usr/local/sbin文件夾下所有文件復制到根目錄/lib文件夾下。

root@ELF1:/# cd usr/local/ root@ELF1:/usr/local# cp -rf ./lib/* /lib root@ELF1:/usr/local# cp -rf ./bin/* /bin root@ELF1:/usr/local# cp -rf ./sbin/* /bin

將/etc/mosquitto/文件夾下mosquitto.conf.example文件復制到根目錄/etc下并重命名為mosquitto.conf。

root@ELF1:/usr/local# cd /etc/mosquitto/ root@ELF1:/etc/mosquitto# cp mosquitto.conf.example /etc/mosquitto.conf

修改/etc/mosquitto.conf文件,在第40行下添加user root。

wKgZPGdb4tSACnktAAC3IN1mR4c401.png

保存退出

測試

1、打開兩個串口終端,一個串口登錄,一個網口登錄

2、啟動mosquitto服務

root@ELF1:~# mosquitto -d -c /etc/mosquitto.conf

3、一端訂閱test主題

root@ELF1:~# mosquitto_sub -t test

4、一端發布test主題

root@ELF1:~# mosquitto_pub -t test -m "hello world"

wKgZO2db4yuAAuCkAAA8Hdlg9uo969.png

可以看到訂閱端接收到發布端的“hello world”消息,測試成功。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 單片機
    +關注

    關注

    6035

    文章

    44554

    瀏覽量

    634634
  • 嵌入式
    +關注

    關注

    5082

    文章

    19104

    瀏覽量

    304800
  • 開發板
    +關注

    關注

    25

    文章

    5032

    瀏覽量

    97371
  • mosquitto
    +關注

    關注

    0

    文章

    5

    瀏覽量

    2931
收藏 人收藏

    評論

    相關推薦

    Mosquitto安裝步驟

    1、安裝依賴yum -y install gcc gcc-c++ openssl-devel c-ares-devel libuuid-devel wget cmake2、為mosquitto增加
    發表于 07-16 06:10

    迅為i.MX6開發板mqtt 移植教程(一)

    會收到我們的發布的信息 Hello MQTT,如下圖所示: 三.移植 mosquitto 到開發板 mqtt 源碼下載頁: https://mosquitto.org/files/source
    發表于 03-06 16:47

    iTOP-4412開發板-mqtt移植教程(二)

    ,其他開發板操作一致我們解壓這個壓縮包,并進入到解壓生成的目錄,如下圖所示:我們把開發板當前目錄下 libuuid-1.0.3/ mosquitto-1.5/ openssl/三個文件下的 lib 下的
    發表于 07-16 14:35

    項目實戰-廣域網智能家居-把mosquitto移植到arm上

    Mosquitto依賴libuuid和openssl,所以我們在交叉編譯Mosquitto之前需要先交叉編譯他所需要的依賴,這里作者已
    發表于 12-30 13:44

    如何把mosquitto移植到arm上

    項目實戰-廣域網智能家居-把mosquitto移植到arm上
    發表于 01-08 06:51

    mosquitto的使用方法

      1、mosquitto簡介  mosquitto是一款開源的MQTT消息代理(服務器)軟件,提供輕量級的,支持可發布/可訂閱的的消息推送模式,使設備對設備之間的短消息通信變得簡單,比如現在
    發表于 01-19 15:58

    mosquitto在ARM嵌入式平臺的移植方法

    MQTT 基礎概念Broker(服務端, 代理者)---- 使用PC(192.168.100.33:1883)機 運行mosquitto程序即可Subscriber(客戶端-訂閱者)---- 192.168.100.35 嵌入式板子APublisher(客戶端-發布者)...
    發表于 12-14 08:20

    mosquitto的幾個版本

    幾個版本的mosquitto的安裝軟件,windows下可使用
    發表于 10-29 11:24 ?0次下載

    ARM官方DSP移植

    ARM官方DSP移植,詳細源代碼提供參考
    發表于 11-23 15:59 ?16次下載

    STM32移植過程詳解以固件

    STM32 固件移植的方法及簡單介紹。。
    發表于 12-17 13:54 ?18次下載

    STM32固件在MDK下移植

    STM32固件在MDK下移植,簡介使用及開發移植相關應用
    發表于 05-09 11:57 ?3次下載

    OpenHarmony技術論壇:OpenHarmony移植技術分享

    《OpenHarmony Tech Day·技術日》 技術論壇 OpenHarmony移植技術分享 OpenHarmony移植工作有三大部分
    的頭像 發表于 04-25 16:53 ?2802次閱讀
    OpenHarmony<b class='flag-5'>技術</b>論壇:OpenHarmony<b class='flag-5'>移植</b><b class='flag-5'>技術</b>分享

    ElfBoard學習筆記分享

    ElfBoard精心構筑的嵌入式技術應用社群“自創一派”共創社,已成立了半月有余。在這段時間里,每位共創官無論是對產品應用理念的碰撞,還是對嵌入式技術問題的探討,都在社群里盡情展示著自己的專業見解
    的頭像 發表于 01-06 16:56 ?438次閱讀
    <b class='flag-5'>ElfBoard</b>學習筆記分享

    項目分享|基于ElfBoard的遠程監測系統

    技術領域的專業素養。值得一提的是,社群內部已經涌現出許多富有創意的產品設計理念與技術解決方案,今天就跟大家分享一名共創官完成的項目報告“基于ElfBoard的遠程監測系
    的頭像 發表于 01-17 11:14 ?576次閱讀
    項目分享|基于<b class='flag-5'>ElfBoard</b>的遠程監測系統

    elfboard配置交叉編譯

    elfboard開發板上手
    的頭像 發表于 05-26 11:17 ?278次閱讀
    主站蜘蛛池模板: 中文字幕一区二区三区在线播放 | 国产高清在线a视频大全| 嫩草视频在线观看免费| 精品国产国产综合精品| 亚洲色图在线播放| aaaaaa级特色特黄的毛片| 久久久久久久久免费视频| 99精品成人无码A片观看金桔| 热re99久久精品国99热| 国产乱国产乱老熟300部视频| 在线免费公开视频| 日本精品久久久久中文字幕2| china18一19 第一次| 午夜伦理伦理片在线观| 久久久久国产精品嫩草影院| 被免费网站在线视频| 亚洲国产在线99视频| 嫩草电影网嫩草影院| 国产偷国产偷亚洲高清SWAG | 公么我好爽再深一点| 亚洲香蕉视频在线播放| 欧美多人群p刺激交换电影| jzz大全18| 亚洲成年男人的天堂网 | 97在线视频免费观看97| 五花大绑esebdsm国产| 快穿女主有名器的H纯肉黄暴拉文 快插我我好湿啊公交车上做 | 伊人久久综合影院首页| 欧美性狂猛AAAAAA| 国模玲玲自拍337p| 野花日本手机观看大全免费3| 青娱乐国产精品视频| 精品国产在天天线在线麻豆| 爱穿丝袜的麻麻3d漫画acg| 亚洲在线成色综合网站| 日本熟妇乱妇熟色A片蜜桃亚洲| 九九热这里只有精品2| 最美白虎逼| 无码人妻少妇色欲AV一区二区 | 18禁在线无遮挡羞羞漫画| 男人天堂黄色|