设为首页 加入收藏

TOP

ARM926的Linux工具链的制作和测试
2014-11-24 03:03:30 来源: 作者: 【 】 浏览:1
Tags:ARM926 Linux 工具 制作 测试

ARM926的Linux工具链的制作(续 : 基于uclibc),用uClibc代替了Glibc。


下载的代码目录 root: /home/lake/arm-uclibc-linux
目标目录
dir: /home/lake/arm-uclibc-linux/uclibc-tools


1. 准备工作:


下载 Binutil2.17/Gcc3.4.6/uClibc0.9.28/Linux-kernel2.6.24
Patch:
URL: http://gcc.gnu.org/bugzilla/attachment.cgi id=6132
此时针对Gcc3.4编译libstd的补丁


2. 编译binutil

#mkdir binutils
# cd build_binutils
# rm -fr *
# ../binutils-2.17/configure --target=$TARGET --prefix=$PREFIX --disable-multilib --disable-nls
# make all
# make install


3. 获得核心针对ARM926的头文件
cd ~/lfs/linux-2.6.24
make ARCH=arm CROSS_COMPILE=arm-linux- defconfig
#make ARCH=arm CROSS_COMPILE=arm-linux- menuconfig ------> Select ARM type
make ARCH=arm CROSS_COMPILE=arm-linux-
make include/linux/version.h
cp -ar include/linux ${TARGET_PREFIX}/include/
cp -ar include/asm-arm ${TARGET_PREFIX}/include/asm
cp -ar include/asm-generic ${TARGET_PREFIX}/include/asm-generic
cd $TARGET_PREFIX/
ln -s include sys-include ###GCC编译时候默认使用sys-include,做一个软连接


4. 编译GCC---第一阶段


patch URL: http://gcc.gnu.org/bugzilla/attachment.cgi id=6132


lake:~/arm-uclibc-linux$ patch -p1 -d gcc-3.4.6 < gcc3.4-libstdc++-uclibc.patch
==============================================================
###Compile first stage gcc
# mkdir build_bootstrap
# cd build_bootstrap
# rm -fr * ----->必须删除就的编译
#
../gcc-3.4.6/configure --target=$TARGET --prefix=$PREFIX \
--with-local-prefix=$TARGET_PREFIX --disable-multilib \
--with-newlib --disable-nls --enable-threads=no --enable-symvers=gnu \
--enable-__cxa_atexit --enable-languages=c --disable-shared \


注意有些编译器版本支持 --with-float=soft --with-softfloat-supp,这对编译U-boot有帮助,不过在Gcc3.4.6上,笔者未试成功
# make all-gcc
# make install-gcc


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇Linux下C语言编程遇到的小问题 下一篇Android 游戏开发 SurfaceView框架

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

·Sphinx : 高性能SQL (2025-12-24 10:18:11)
·Pandas 性能优化 - (2025-12-24 10:18:08)
·MySQL 索引 - 菜鸟教 (2025-12-24 10:18:06)
·Shell 基本运算符 - (2025-12-24 09:52:56)
·Shell 函数 | 菜鸟教 (2025-12-24 09:52:54)