那曲檬骨新材料有限公司

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

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

3天內(nèi)不再提示

ElfBoard技術(shù)貼|如何將libwebsockets庫編譯為x86架構(gòu)

ElfBoard ? 2024-07-10 09:38 ? 次閱讀

在之前的文章中,我們已經(jīng)詳細介紹了如何交叉編譯libwebsockets并將其部署到ELF 1開發(fā)板上。然而在調(diào)試階段,發(fā)現(xiàn)將libwebsockets在Ubuntu環(huán)境下編譯為x86架構(gòu)可能更為方便和高效。


通過在主機環(huán)境中編譯運用x86架構(gòu)下的libwebsockets庫,可以充分利用主機卓越的計算性能與豐富的調(diào)試資源,顯著提升開發(fā)及調(diào)試工作的效率與便捷性。


接下來,將和各位小伙伴詳盡闡述在Ubuntu系統(tǒng)中編譯libwebsockets庫的具體步驟,以及如何對其進行有效測試。

編譯libwebsockets

1、從Github下載libwebsockets源碼

https://github.com/warmcat/libwebsockets


2、將下載的libwebsockets-main.zip拷貝到開發(fā)環(huán)境/home/elf/work目錄下解壓

elf@ubuntu:~/work$ unzip libwebsockets-main.zip

3、進入解壓后的目錄,新建build和insatll目錄

elf@ubuntu:~/work$ cd libwebsockets-main/ elf@ubuntu:~/work/libwebsockets-main$ mkdir build elf@ubuntu:~/work/libwebsockets-main$ mkdir install

4、進入build目錄,配置編譯環(huán)境并編譯源碼

elf@ubuntu:~/work/libwebsockets-main$ cd build/ elf@ubuntu:~/work/libwebsockets-main/build$ cmake -DCMAKE_INSTALL_PREFIX=../install .. elf@ubuntu:~/work/libwebsockets-main/build$ make

5、編譯完成后,安裝文件

elf@ubuntu:~/work/libwebsockets-main/build$ make install

基礎(chǔ)測試

驗證libwebsockets庫的基本功能,確保服務(wù)器能夠正確啟動并能通過瀏覽器訪問。

1、測試工具使用libwebsockets提供的測試程序進行測試,查看安裝目錄中的可執(zhí)行文件:

elf@ubuntu:~/work/libwebsockets-main/build$ cd ../install/bin/ elf@ubuntu:~/work/libwebsockets-main/install/bin$ ls libwebsockets-test-client libwebsockets-test-lejp libwebsockets-test-server libwebsockets-test-server-extpoll

2、運行服務(wù)器端測試程序

elf@ubuntu:~/work/libwebsockets-main/install/bin$ libwebsockets-test-server

wKgZomaN5RuAdZbQAAI8_pAMDFs722.png

可以看到服務(wù)器已經(jīng)在7681端口監(jiān)聽。

3、在瀏覽器中訪問服務(wù)器

打開瀏覽器,輸入http://192.168.2.101:7681,替換192.168.2.101為自己的服務(wù)器IP地址。出現(xiàn)如下頁面,測試成功。

wKgZomaN5TGAQYJUAAIm7yh8t6Y816.png

擴展測試

前面已經(jīng)介紹了如何將libwebsockets庫編譯成ARM架構(gòu)并移植到ELF 1開發(fā)板上。為了驗證 libwebsockets 庫在不同架構(gòu)上的兼容性和實際應(yīng)用中的穩(wěn)定性,以ARM開發(fā)板為客戶端來連接虛擬機上的服務(wù)端。

前提:將虛擬機設(shè)置為橋接模式,使虛擬機和開發(fā)板處于同一局域網(wǎng)內(nèi),確保網(wǎng)絡(luò)連接正常。

1、虛擬機運行服務(wù)端測試程序

elf@ubuntu:~/work/libwebsockets-main/install/bin$ libwebsockets-test-server

wKgZomaN5V6AXF3GAAJ0C6KmW_U685.png

可以看到服務(wù)器已經(jīng)在7681端口監(jiān)聽。

2、開發(fā)板運行客戶端測試程序

客戶端命令格式:

libwebsockets-test-client [--port=

] [--ssl] [-k] [-v ] [-d ] [-l]

執(zhí)行如下命令,替換192.168.2.101為自己的服務(wù)器IP地址。

root@ELF1:~# libwebsockets-test-client 192.168.2.101 --port=7681

wKgZomaN5ZmAf5LKAAQg0IhTPI0112.png

可以看到連接開始于2024年6月24日15:55:01,目標IP地址為192.168.2.101。連接成功后,客戶端打印了mirror: LWS_CALLBACK_CLIENT_ESTABLISHED的消息,表示已成功建立與服務(wù)器的WebSocket連接。

至此就完成了將libwebsockets庫編譯為x86架構(gòu)的步驟,希望本篇指南能成為各位小伙伴在嵌入式技術(shù)探索之旅上的得力助手。如果您在實踐過程中遇到任何問題,歡迎留言交流。

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

    關(guān)注

    6043

    文章

    44622

    瀏覽量

    638519
  • 嵌入式
    +關(guān)注

    關(guān)注

    5092

    文章

    19177

    瀏覽量

    307647
  • 嵌入式開發(fā)
    +關(guān)注

    關(guān)注

    18

    文章

    1035

    瀏覽量

    47716
  • 嵌入式開發(fā)板
    +關(guān)注

    關(guān)注

    5

    文章

    83

    瀏覽量

    18820
收藏 人收藏

    評論

    相關(guān)推薦

    ELF 1技術(shù)|如何在Ubuntu中編譯OpenCV

    在之前發(fā)布的文章中探討了交叉編譯OpenCV并部署至嵌入式系統(tǒng)的方法。然而,在調(diào)試階段,我們發(fā)現(xiàn)在Ubuntu環(huán)境下OpenCV編譯為X86架構(gòu)
    的頭像 發(fā)表于 05-31 16:41 ?1211次閱讀
    ELF 1<b class='flag-5'>技術(shù)</b><b class='flag-5'>貼</b>|如何在Ubuntu中<b class='flag-5'>編譯</b>OpenCV<b class='flag-5'>庫</b>

    I.MX6ULL-飛凌 ElfBoard ELF1板卡 - 如何在Ubuntu中編譯OpenCV(X86架構(gòu)

    使用X86架構(gòu)的OpenCV,利用主機的強大計算性能和豐富的調(diào)試工具,可以加速開發(fā)進程并簡化調(diào)試環(huán)節(jié)。下面就跟小伙伴詳細講述如何在Ubuntu環(huán)境下 OpenCV
    發(fā)表于 06-07 09:32

    x86架構(gòu)和arm架構(gòu)的區(qū)別

    X86架構(gòu)X86指令集,它屬于CISC指令集。ARM架構(gòu)是ARM指令集,屬于RISC指令集。X86是馮若依曼結(jié)構(gòu),ARM是哈弗結(jié)構(gòu),這個不
    發(fā)表于 09-27 14:40

    適用于x86架構(gòu)的快速啟動步驟是什么?

    x86架構(gòu)通常會喚起人們對家用電腦或企業(yè)服務(wù)器的思索。這并不出人意料,因為x86處理器的功耗通常較大。最近,英特爾公司開始以嵌入式、低功耗和低成本市場為目標,并推出了基于x86
    發(fā)表于 03-20 06:38

    ARM架構(gòu)的系統(tǒng)與X86架構(gòu)系統(tǒng)的特性有什么不同?

    ARM的架構(gòu)相較于x86有哪些特點?ARM架構(gòu)的系統(tǒng)與X86架構(gòu)系統(tǒng)的特性有什么不同?
    發(fā)表于 06-16 09:05

    Powerpc架構(gòu)X86架構(gòu)的區(qū)別

    目錄1、ARM1.1 ARM歷史1.2 ARM內(nèi)核系列2、MIPS應(yīng)用范圍發(fā)展歷史3、PowerPC三巨頭4、X86架構(gòu)X86歷史5、PowerPC架構(gòu)相比于ARM的優(yōu)勢6、Power
    發(fā)表于 07-26 06:16

    x86架構(gòu)的最大特色在哪

    x86系:x86架構(gòu)的最大特色在于可以兼容Windows操作系統(tǒng),現(xiàn)已成為了業(yè)界的一種標準。芯片巨頭美國英特爾(Intel)一家獨大。——(北大眾志、兆芯、海光)兆芯:上海兆芯集成電路有限公司(以下
    發(fā)表于 07-27 08:14

    arm架構(gòu)x86架構(gòu)有什么區(qū)別

    什么叫arm架構(gòu)x86架構(gòu)是由哪些部分組成的?arm架構(gòu)x86架構(gòu)有什么區(qū)別?
    發(fā)表于 10-25 08:25

    X86架構(gòu)和ARM架構(gòu)

      ARM架構(gòu)是一個32位元精簡指令集中央處理器架構(gòu)x86架構(gòu)指的是特定微處理器執(zhí)行的一些計算機語言指令集。X86
    發(fā)表于 11-30 12:48
    <b class='flag-5'>X86</b><b class='flag-5'>架構(gòu)</b>和ARM<b class='flag-5'>架構(gòu)</b>

    X86架構(gòu)和ARM架構(gòu),在工業(yè)領(lǐng)域的優(yōu)勢爭霸

    在處理器架構(gòu)方面,X86架構(gòu)和ARM架構(gòu)在性能方面有那些區(qū)別? X86架構(gòu)和ARM
    發(fā)表于 07-31 15:58 ?6716次閱讀

    一文看懂a(chǎn)rm架構(gòu)x86架構(gòu)有什么區(qū)別

    本文主要介紹的是arm架構(gòu)x86架構(gòu)的區(qū)別,首先介紹了ARM架構(gòu)圖,其次介紹了x86架構(gòu)圖,最
    的頭像 發(fā)表于 05-16 14:19 ?31.2w次閱讀
    一文看懂a(chǎn)rm<b class='flag-5'>架構(gòu)</b>和<b class='flag-5'>x86</b><b class='flag-5'>架構(gòu)</b>有什么區(qū)別

    X86架構(gòu)無可取代 業(yè)界地位無法撼動

    X86架構(gòu)已經(jīng)問世41年了,當年它還只是眾多CPU架構(gòu)中的一種,但是被IBM選擇為兼容PC的處理器之后,X86這么多年來已經(jīng)確定了它在業(yè)界的地位。現(xiàn)在包括ARM在內(nèi)的
    發(fā)表于 12-13 10:19 ?1980次閱讀

    X86架構(gòu)與Arm架構(gòu)區(qū)別

    X86架構(gòu)(The X86 architecture)是微處理器執(zhí)行的計算機語言指令集,指一個intel通用計算機系列的標準編號縮寫,也標識一套通用的計算機指令集合。x86泛指一系列基
    的頭像 發(fā)表于 02-22 09:37 ?7080次閱讀

    x86架構(gòu)工業(yè)主板解決方案

    x86架構(gòu)工業(yè)主板主要用于工業(yè)場合,是工業(yè)計算機的重要組成部分。由于x86架構(gòu)工業(yè)母板能夠適應(yīng)溫度范圍大的環(huán)境,并且能夠長期在高負載環(huán)境下工作,因此在工業(yè)控制行業(yè)得到了廣泛的應(yīng)用。接下
    的頭像 發(fā)表于 03-07 10:26 ?1355次閱讀

    X86架構(gòu)與Arm架構(gòu)的區(qū)別

    X86架構(gòu)和ARM架構(gòu)是主流的兩種CPU架構(gòu)X86架構(gòu)的CPU是PC服務(wù)器行業(yè)的老大,ARM
    的頭像 發(fā)表于 06-16 12:50 ?2.6w次閱讀
    <b class='flag-5'>X86</b><b class='flag-5'>架構(gòu)</b>與Arm<b class='flag-5'>架構(gòu)</b>的區(qū)別
    百家乐三路法| 百家乐官网娱乐分析软件v4.0| 锦屏县| 梦幻城百家乐的玩法技巧和规则| 百家乐平台凯发| 百人百家乐软件供应| 温州市百家乐鞋业| 百家乐的奥秘| 榆次百家乐的玩法技巧和规则 | 全讯网77| qq德州扑克官网| 全讯网| 网上百家乐官网网站导航| 优博百家乐官网yobo88| 现金百家乐官网代理| 网上百家乐官网骗钱| 属虎和属龙合伙做生意| 百家乐视频游戏双扣| 尊龙百家乐娱乐平台| 沙龙百家乐代理| 博彩网站源码| 真人百家乐软件博彩吧| 网上百家乐试| 澳盈88开户,| 最新百家乐官网游戏机| 黄金会百家乐官网赌城| 罗盘24山珠宝火坑| 百家乐最新道具| 大发888娱乐场下载最高| 金博士娱乐城优惠| 百家乐官网投注必胜法| 百家乐官网赌场玩法技巧| 百家乐澳门路规则| 澳门百家乐游戏说明书| 嘉禾百家乐的玩法技巧和规则| 888娱乐城返水| 玩百家乐官网678娱乐城| 网上百家乐骗人吗| 肯博百家乐的玩法技巧和规则| 太阳网娱乐| 百家乐官网娱乐城会员|