模擬交叉編譯環境scratchbox2的使用

交叉編譯環境搭建

 

本文介紹了在fedora系統環境下,使用sb2模擬arm開發板的交叉編譯環境。

假設交叉編譯的工具鏈和gcc編譯器已經做成。

1.交叉編譯工具ScratchBox2安裝

1.獲取編譯工具ScratchBox2安裝包

 

官網下載:

http://maemo.gitorious.org/scratchbox2/scratchbox2/trees/master

 

2.編譯安裝ScratchBox2。

前提:系統安裝了qemu,可執行 yum install qemu 安裝

①將安裝包拷貝到任意目錄,解壓scratchbox2-scratchbox2-master.tar.gz。

執行命令:tar zxvf scratchbox2-scratchbox2-master.tar.gz

②進入解壓縮後的目錄

cd /scratchbox2-scratchbox2/

③文本工具查看文件夾下README文件,可以得到安裝步驟

1) for Debian (Ubuntu系統等):

 

    $ cd scratchbox2

    $ dpkg-buildpackage -rfakeroot

    $ cd ..

    $ sudo dpkg -i libsb2*deb scratchbox2*deb

 

2) for non-debian systems(Fedora系統等):

    $ ./autogen.sh

$ make

    $ make install prefix=$HOME/sb2(安裝路徑)

④修改環境變量

vi  /etc/ profile

添加一行:export PATH=“$PATH:$HOME/sb2/bin”(對應安裝路徑)

保存退出,註銷用戶,重新登錄。

2.交叉編譯環境配置

1.取得需要的交叉編譯器和根文件系統

TflusSVN上獲取:

gcc交叉編譯器:

arm-imx5x-linux-gcc.tar.gz

 

根文件系統:

target-iMX5-rootfs-DEVELOP.tar.bz2

 

2.環境配置

 

①新建任意目錄

假設在/home/work/新建work_build

cd /home/work/

mkdir work_build

進入work_build 新建目錄 rootfs,

 cd  work_build

mkdir rootfs

 

②將gcc編譯器拷貝到work_build下解壓縮。

tar zxvf arm-imx5x-linux-gcc.tar.gz

將根文件系統拷貝到:/home/work/work_build/rootfs下解壓縮。

tar jxvf target-iMX5-rootfs-DEVELOP.tar.bz2

 

③初始化交叉編譯器

現在根文件系統 位於  /home/work/work_build/rootfs 中。
      交叉編譯器 位於  /home/work/work_build/arm-imx5x-linux- gcc 中。

補充說明,交叉編譯初始化需要連接網絡,如果需要代理上網(比如公司),需要先配置.wgetrc上網代理。

cd  /home/work

touch  .wgetrc

vi  .wgetrc

然後添加如下

http_proxy=xxx.xxx.xxx.xxx:8888(代理ip:端口)

--proxy-user=xxx(用戶名)

--proxy-passwd= xxx(密碼)

 

2)執行如下命令

進入根文件系統所在目錄

cd  /home/work/work_build/rootfs

執行如下命令:

sb2-init -c /usr/bin/qemu-arm iMX5 (可以是任意名稱,根據自己需要隨便定義) /home/work/work_build/arm-imx5x-linux-gcc/bin/arm-linux-gcc

等待看到 sucssecful,表示初始化成功。

3.進行交叉編譯

①打開終端

②輸入命令

sb2 –t  iMX5

終端顯示[SB2 sample iMx5] 說明編譯器啓動成功,可以進入要編譯的代碼進行交叉編譯了。

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章