1. 程式人生 > >使用scratchbox2建立交叉編譯環境

使用scratchbox2建立交叉編譯環境

ips debian amp net 。。 dir tails details art

使用scratchbox2建立交叉編譯環境,使交叉編譯不再煩人。。。。。

os:ubuntu 12.04.4 x64

1. 安裝相關工具
sudo apt-get install debootstrap scratchbox2
sudo apt-get install qemu-user-static

mkdir rootfs
cd rootfs

2. 下載debian 文件系統並安裝
sudo debootstrap --verbose --arch mipsel --foreign stable `pwd` http://ftp.at.debian.org/debian

cp /usr/bin/qemu-mipsel-static usr/bin


chroot . /bin/bash
/debootstrap/debootstrap --second-stage

3. 建立交叉編譯用環境
sb2-init ls1c /opt/CodeSourcery/mipsel-none-linux-gnueabi/bin/mipsel-none-linux-gnueabi-gcc
sudo sb2 或 sudo sb2 -t ls1c

4. 例子
[SB2 simple ls1c ] [email protected] ~ $ gcc hello.c
[SB2 simple ls1c ] [email protected] ~ $ file a.out
a.out: ELF 32-bit LSB executable, MIPSEL, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.16, BuildID[sha1]=0xd18141915ced466188d07dfd1a862a5d82d9de73, not stripped
[SB2 simple ls1c ] [email protected] ~ $ ./a.out
hello, world

5. 說明
其中rootfs為目標板文件系統的目錄,debootstrap會在裏面安裝相關的文件。
ls1c為自己取的名字,可以自己命名。gcc參數需填整完整的路徑。
更詳細的參數說明見sb2-init 幫助
如果覺得文件系統過大可以考慮用debian embedded 系統。

6. 參考文檔:
http://www.cnblogs.com/qiaoqiao2003/p/3738552.html
http://blog.csdn.net/dotmonkey/article/details/6952460

http://bbs.loongnix.org/forum.php?mod=viewthread&tid=74477&extra=page%3D1

使用scratchbox2建立交叉編譯環境