ppp與pppoe 交叉編譯移植

2021-07-26 14:48:18 字數 3656 閱讀 2637

(交叉編譯鏈為

arm-hismall-linux-) 1

:arm linux

核心支援

ppp

2: install  ppp-2.4.4 (rp-pppoe

要ppp

的支援才能正常執行)。

3: install  rp-pppoe。

4:把步驟(2)(

3 (有的文件說需要

交叉編譯

libcap

www.tcpdump.org,

測試不需要

)移植需要

rp-pppoe

和ppp

。我用的是

rp-pppoe3.8

和ppp-2.4.5

的組合。

ppp-2.4.5.tar.gz 

rp-pppoe-3.8.tar.gz

使用rp-pppoe-3.11

版本時,編譯出錯,原因至今不明,故選用

rp-pppoe-3.8

版本)

在核心原**主目錄下

make menuconfig

核心加入了

ppp,socket

等選項

device drivers -> network device support  -> <*> ppp (point-to-point protocol)

中,選中所有

ppp選項:

device drivers ->

network device support->

<*> ppp (point-to-point protocol) support

[*] 

ppp multilink support

<*> ppp support for async serial ports

<*> ppp support for sync tty ports

<*> slip (serial line) support

[*] 

cslip compressed headers

device drivers -> network device support -> <*> universal tun/tap device driver support

退出,儲存配置,重新執行

make bzimage. 將

arch/arm/boot/

下的zimage

我的核心設定為:

device drivers -> network device support  -> <*> ppp (point-to-point protocol)

中,選中所有

ppp選項:

device drivers ->

network device support->

ppp (point-to-point protocol) support

[*] 

ppp multilink support

ppp support for async serial ports

ppp support for sync tty ports

slip (serial line) support

[*] 

cslip compressed headers

device drivers -> network device support -> universal tun/tap device driver support

需要將未安裝的模組使用

insmod

命令載入

.ko。

也可以直接向上面那樣

,編譯出具有這些功能的核心(推薦

) 解包

# tar zxvf ppp-2.4.5.tar.gz 配置

# cd ppp-2.4.5

# ./configure 編譯

# make cc=arm-hismall-linux-gcc (

這裡arm-hismall-linux-gcc

交叉編譯器)

編譯完成後,進入

pppd

目錄,將生成的

pppd

可執行檔案拷貝到目標板檔案系統的

/usr/sbin下。

將pppd

目錄下的已經編譯好的

pppd

檔案拷貝至開發板短的檔案系統的

/usr/sbin

目錄下,在板子上輸入

pppd

,看看是否有亂碼出來

(若核心沒有載入

ppp模組

,則提示核心不支援

),如果有亂碼,恭喜這一步ok了

解包# tar zxvf rp-pppoe-3.8.tar.gz 配置

# cd rp-pppoe-3.8/src

# ./confiugre --host=arm-linux 修改

makefile

# vim makefile

//將其中所有的

gcc改為

arm-hismall-linux-gcc,

所有的ar

改arm-hismall-linux-ar (

這裡arm-hismall-linux-gcc

交叉編譯器)

編譯 # make 安裝

# make install

make install

之後,把宿主

pc機中

/usr/sbin

目錄下產生的關於

pppoe

的所有檔案

(pppoe,pppoe-server, pppoe-sniff, pppoe-relay, pppoe-setup, pppoe-start, pppoe-stop, pppoe-status,pppoe-connect )

拷貝到開發板

/usr/sbin

目錄下

(注意:其中

pppd

不是宿主機

/usr/sbin

目錄中的

pppd

,而是../ppp-2.4.5/pppd/pppd) 1

:目標板配置

接好網線以後,直接輸入

pppoe-setup

# pppoe-setup

安裝提示輸入你的資訊,在

dns那可以暫時選擇

server(

這會使接下來

ping

的時候只能用

ip ping

不能直接跟**

,如果你知道你所在網路的接入商的

dns的話就填進入

),防火牆選擇

0,ok.

如果這個時候就使用

pppoe-start

# pppoe-start

開始連線的話

,很大情況下你會得到

timeout

的提示,

那麼我們該怎麼做呢

?需要在

dev目錄下建立乙個

pts的資料夾,進入

pts,

建立節點

mknod 0 c 136 0:mknod1 c 136 1.

每次連線都需要建立

,比較麻煩

,所以還是把這幾條指令寫進指令碼吧

.如果不錯的話

,一般都會得到乙個

connect資訊.

移植 交叉編譯zeroMQ與pyzmq

因為專案需要,需要將pyzmq第三方包移植到arm板,這樣會涉及zeromq與pyzmq兩個庫的交叉編譯。當然,有快捷的方法 1.直接使用arm板連線外網,直接安裝zeromq與pyzmq,可以參考官網guide或參考 2.我們這裡使用的方法是,zeromq在虛擬機器編譯,pyzmq在開發板上編譯。...

madplay移植 交叉編譯

移植madplay 需要如下檔案 madplay 0.15.2b.tar.gz libmad 0.15.1b.tar.gz libid3tag 0.15.1b.tar.gz 和zlib 1.2.3.tar.gz。zlib 1.1.4.tar.gz zlib 1.2.3.tar.gz類似 1 配置編譯...

嵌入式pppoe交叉編譯流程

2.進入 rp pppoe 3.11 src目錄,新建乙個install目錄,用來儲存pppoe的安裝檔案 3.配置configure configure host nuc972 arm none linux gnueabi prefix home test smbshare pppoe rp pp...