將websocket移植到omap3530

來源:互聯網
上載者:User

開發平台:Ubuntu12.04.1 LTS(32bit)

開發板: omap3530

使用庫:libwebsockets (libwebsockets-1.0-chrome25-firefox17.tar.gz) (http://git.warmcat.com/cgi-bin/cgit/libwebsockets/)

輔助庫:zlib(source code ,version 1.2.7)(
http://www.zlib.net/  )

交叉編譯器:arm-2007q3-51-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2

step1:開發環境搭建

按照說明書上寫的(DevKit8000 使用者手冊 P35)

1)  交叉編譯器的安裝

# tar xvjfarm-2007q3-51-arm-none-linux-gnueabi-i686.tar.bz2 -C /usr/local/

2)  添加環境變數

#export PATH=/usr/local/arm-2007q3/bin:$PATH

 

注: 使用者可把它寫入使用者目錄的.barsrc 檔案中,那麼系統啟動的時候自動完成環境變數的添加,查看路徑可以使用 echo $PATH 命令。

 

step2: 交叉編譯zlib

1)  #tar jvxf zlib-1.2.7.tar.bz2

2)  # cdzlib-1.2.7/

3)  #./configure–shared  --prefix=/zlib的安裝路徑

4)  #make LDSHARED="arm-none-linux-gnueabi-gcc -shared-Wl,-soname,libz.so.1" CC_FOR_BUILD="arm-none-linux-gnueabi-gcc"CC="arm-none-linux-gnueabi-gcc" LD="arm-none-linux-gnueabi-ld"CPP="arm-none-linux-gnueabi-g++ -E"AR="arm-none-linux-gnueabi-ar"

CFLAGS="-fPIC"libz.so.1.2.7 libz.a

5)  拷貝zconf.h zlib.h到/usr/local/arm-2007q3/arm-none-linux-gnueabi/include/

6)  拷貝 libz.so*到/usr/local/arm-2007q3/arm-none-linux-gnueabi/lib/

    註:/usr/local/arm-2007q3是交叉編譯安裝的路徑

 

step3:交叉編譯websocket

1)  #tarjvxf libwebsockets.tar.bz2

2)  #cdlibwebsockets

3)  修改程式 ./test-server/test-server.c

L78 INSTALL_DATADIR"/favicon.ico"改成"favicon.ico"

L86  INSTALL_DATADIR"/test.html"改成"test.html"

4)  #./autogen.sh

5)  #CC=arm-none-linux-gnueabi-gcc

./configure--build=i686-pc-linux –host=arm-none-linux-gnueabi

6)  #make

7)  #cd  test-server/.libs

8)  #filelibwebsockets-test-server,驗證該檔案是否為ARM的可執行檔

如是的話,會提示:

 ELF 32-bit LSBexecutable,
ARM, version 1 (SYSV), dynamicallylinked (uses shared libs), for GNU/Linux 2.6.14, not stripped。

 

step4:配置開發板

1)  使用交叉網線將主機和開發板串連起來,並配置主機和開發板的ip地址,它們只需要同一網段即可。

主機PC:#ifconfig eth0 192.168.1.100

開發板:#ifconfig eth0 192.168.1.1

2)  將PC上的./lib/.libs/libwebsockets.so.1拷貝到開發板/lib中

3)  將./test-server/.libs/libwebsockets-test-server和./test-server/test.html拷貝到開發板上,放在同一目錄下,在開發板上運行#./libwebsockets-test-server

4)  在PC上,開啟支援HTML5的瀏覽器,http://192.168.1.1:7681

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.