使用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 ] root@vm ~ $ gcc hello.c
[SB2 simple ls1c ] root@vm ~ $ 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 ] root@vm ~ $ ./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建立交叉编译环境的更多相关文章

  1. ubuntu14.04建立交叉编译环境, 注意事项

    ubuntu14.04建立交叉编译环境, 注意事项 ~$ arm-linux-gcc/opt/FriendlyARM/toolschain/4.4.3/bin/arm-linux-gcc: 15: e ...

  2. ubuntu16.04(64位)建立交叉编译环境,并配置编译内核

    安装步骤 1.准备工具安装目录 将压缩包gcc-linaro-arm-linux-bnueabihf-4.9-2014.07_linux.tar存放在一个目录下,这个目录就是你等会解压缩的目录,以后这 ...

  3. Ubuntu系统建立交叉编译环境

    飞凌 FET6818核心板 解压编译器: tar zxvf arm-cortex_a9_eabi-4.7-eglibc-2.18.tar.gz  -C/opt 设置默认编译环境: vi /etc/pr ...

  4. 建立交叉编译环境(arm-linux-gcc)

    linux系统内核版本:2.6.32-358.el6.x86_64(在64位系统上安装32位程序需要另外安装一些库) arm-linux-gcc版本:本文安装的是友善之臂tiny6410光盘中自带的a ...

  5. 建立ARM交叉编译环境 (arm-none-linux-gnueabi-gcc with EABI)【转】

    转自:http://lib.csdn.net/article/embeddeddevelopment/60172?knId=886 建立ARM交叉编译环境 (arm-none-linux-gnueab ...

  6. Ubuntu12.04下arm交叉编译环境的建立

    http://blog.csdn.net/heyangya2009/article/details/5424376 备注:ubuntu12.04+Android+Real6410 在主机上用来编译其他 ...

  7. 建立树莓派raspberry交叉编译环境以及编译内核

    最近买了一个树莓派,玩了几天,虽然已经有很多人玩了,现在玩好像有点晚了,但是他确实是个好东西,学好它,对嵌入式的整个开发流程也就会熟悉很多.虽然性能不是很强和现在的BB-BLACK比有点慢了,但是它便 ...

  8. Ubuntu 16.04 安装 arm-linux-gcc 嵌入式交叉编译环境 问题汇总

    闲扯: 实习了将近半年一直在做硬件以及底层的驱动,最近要找工作了发现了对linux普遍要求很高,而且工作岗位也非常多,所以最近一些时间在时不时地接触linux. 正文:(我一时兴起开始写博客,准备不充 ...

  9. Ubuntu 树莓派2b交叉编译环境

    在一个平台上生成另一个平台上的可执行代码.为什么要大费周折的进行交叉编译呢?一句话:不得已而为之.有时是因为目的平台上不允许或不能够安装所需要的编译器,而又需要这个编译器的某些特征:有时是因为目的平台 ...

随机推荐

  1. ITFriend创业败局(序):简要概述我的第一次创业经历

    是时候, 面对过去,继续踏上未来之路了.    是时候,该给自己一个交待了,给ITFriend创业合伙人.ITFriend用户.关注我的朋友和网友们一个答复了.    是时候,全面认真总结过去的经历. ...

  2. NOIP模拟 Work - 二分 + 树状数组 / ???

    题目分析 如果没有最后的注意事项,此题就是二分裸题.有了注意事项,会有两种思路: 在线:二分天数t,并在主席树上求1~t天中大于d(浪费的时间)的时间之和以及数量,答案即为:sum - d * cnt ...

  3. TensorFlow 学习(七) — 常用函数 api、tf.nn 库

    0. 四则运算 平方:tf.square(),开方:tf.sqrt() tf.add().tf.sub().tf.mul().tf.div().tf.mod().tf.abs().tf.neg() 1 ...

  4. JAVA SE回顾及思考(2)——数组的复制与动态扩展

    我们知道在Java中数组是非基本类型既数组是对象(Object)的子类,所以用下面的这种方式是不能复制该对象的 public static void main(String[] args) { int ...

  5. node与webpack的process.env.NODE_ENV

    先看两篇文章 1.前端工程项目的NODE_ENV 2. Node 环境变量 process.env.NODE_ENV 之webpack应用 3.process.env.NODE_ENV 下面全部是在w ...

  6. C++基础之字符数组和字符串

    无意中发现了一个非常有意思的技术类型小品文系列,通过大牛指导菜鸟的方式,解说讲C++知识,有的非常基础却是开发中easy忽略的地方. [Elminster的专栏] http://blog.csdn.n ...

  7. eCognition学习记录

    作者:朱金灿 来源:http://blog.csdn.net/clever101 昨天公司从外面请了人讲解eCognition的最新进展及项目二次开发应用情况.我做了大致下面记录: 1.  eCogn ...

  8. PCI GXL学习之安装篇

    作者:朱金灿 来源:http://blog.csdn.net/clever101 上周简单学习了PCI gxl的使用和二次开发.说实话gxl没有我想象中那么自动化,我原以为把一个数据处理作业扔给gxl ...

  9. ASP.NET Core & Docker & Jenkins 零基础持续集成实战

    原文:ASP.NET Core & Docker & Jenkins 零基础持续集成实战 一.本系列教程说明 源代码管理工具:Gogs 持续集成工具:Jenkins 容器:Docker ...

  10. 从FrameworkElement对象创建Cursor对象

    原文:从FrameworkElement对象创建Cursor对象 Normal 0 false false false EN-US ZH-CN X-NONE MicrosoftInternetExpl ...