构建嵌入式Linux开发环境.docx
《构建嵌入式Linux开发环境.docx》由会员分享,可在线阅读,更多相关《构建嵌入式Linux开发环境.docx(21页珍藏版)》请在第一文库网上搜索。
1、构建嵌入式LINUX开发环境构建嵌入式Linux系统1 .取本实验有关的软件包到ftp下载下列软件包:文件名备注binutils_2. 16. 1. tar. bz2 gcc_4. O. 2. tar. bz2 glibc_2. 3. 6. tar. bz2 glibc-linuxthreads-2. 3. 6. tar. bz2 linu-2. 6. 15. 4. tar. bz2 Iinux-Iibc-headers-2. 6. 12. O. tar. bz2制作交叉编译工具链 所需的源码包crosstool-O. 43. tar. gzcrosstool. tar. bz2linu-2.
2、 6. 27. tar. bz2patch-2. 6. 27-akazImagerootfs-basic. tarrootfs-basic. cramfs制作交叉编译工具链 的脚本与补丁 己制作好的交叉编译 工具链,需要解包到 /opt目录使用 内核2. 6. 27针对2440开发板制 作的内核patch 己编译好的内核,可 直接下载到开发板 基本根文件系统打 包,由于有设备文 件,因此解包需要 root权限使用cramfs文件系 统格式的基本根文件 系统映像,可直接下busybox-1. 9. 1. tar. bz2sqlite-3. 4. 0. tar. gzlibcgi-1. 0. ta
3、r. gzqtopia-core-opensource-src-4. 2. 2. tar. gz载到开发板busybox源码包,嵌 入式根文件系统基本 命令集SqIite源码包,嵌 入式数据库Iibcgi源码包,用 于编写CGl程序的C函数库Qtopia Core 源码 包,Qt的嵌入式版本2 .交叉编译工具链要做嵌入式Linux开发,首先需要有交叉编译工具链(cross compiling toolchain), 也就是在主机(x86 PC)上可编译生成目标板可执行文件(ARM指令)的编译工具。与普通 的编译工具链一样,交叉编译工具链也包含编译、链接、修改目标文件的各类程序,如 gcc、gl
4、ibc Ids gas、ObjdUnip、readelf等等。交叉编译工具链本身也是需要编译生成 的,要得到套完整的交叉编译工具链需要编译下列源码包: binutils gcc glibc Iinux (内核) Iinux-Iibc-Headers glibc-1inuxthreads这些源码包具有非常强的版本依靠关系,假如源码包的版本不匹配,在编译过程中会 出现各类各样的问题,有些问题需要对源码做些修改或者者打补丁,有些问题则是没有解 决办法的,只能更换匹配较好的版本。编译的步骤也是比较复杂的,要紧有下列几步: .根据目标平台配置内核源代码,生成内核头文件1 .编译 binutils2 .编
5、译器的自举(bootstrap),也就是先编译出gcc的部分功能(没有glibc支持, 只有C编译器没有C+编译器)3 .编译 glibc4 .编译完整的gcc$ tar xf crosstool-0.43.tar.gz; cd crosstool-0.43 gcc-4. 0. 2 cgcc-4. 0. 2 glibc-2. 3. 6 binutils-2. 16. 1linux-2. 6. 15. 4hdrs2. 6. 12. O修改CroSStOOl-O. 43目录下的脚本demo-arm. sh,取消这一行开头的#号注释符:#eval cat arm.dat gcc-4.0.2-glib
6、c-2.3.6.daf sh all.sh -notest同时将原本没有注释的这一行注释掉(前面加#号):eval cat arm.dat gcc-4.1.0-glibc-23.2-tls.dat sh all.sh notest注意该脚本开头有TARBALLS_DIR=$HOME/downloadsRESLJLT TOP=/opt/crosstool binutils_2. 16. 1. tar. bz2 gcc-4. 0. 2. tar. bz2 glibc_2. 3. 6. tar. bz2 glibc-linuxthreads-2. 3. 6. tar. bz2 linu-2. 6.
7、15. 4. tar. bz2 Iinux-Iibc-headers-2. 6. 12. 0. tar. bz2整个编译结束后,交叉编译工具链将放在optCroSStooI目录下,因此脚本需要在/。Pt下 建子目录,假如不希望使用root权限运行该脚本,则需要事先给/opt目录设置写权限:-$ sudo ch mod a+w /opt然后修改armdat,其中有TARGET=arm-unknown-linux-gnu这是按标准的命名规则为工具链命名的,但是通常我们都使用更简单的命名,很多软 件的MakCfiIe中交叉编译器默认也都使用简单的命名,为此我们把它改为 TARGET=arm-1inu
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 构建 嵌入式 Linux 开发 环境