arm-elf工具链的建立
来源:互联网 发布:网络被帖子攻击怎么办 编辑:程序博客网 时间:2024/05/17 15:39
arm-elf工具链的建立2009-01-05 15:44具体的编绎过程和源码包请参考这个网页,里面的编绎过程写得很清楚,而且还提供脚本下载。
http://openhardware.net/Embedded_ARM/Toolchain/
对于低版本的linux操作系统,机子上可能没有安装mpfr和gmp包,但这两个在gcc高版本中是需要的,如果在编绎newlib遇到无法找到mpfr或者是gmp的链接库时,可以这样子解决。
把gmp和mpfr的源码解压缩到gcc的源码底下,如下:
cd gcc_build ; /
tar jxvf ../downloads/gmp-4.2.1.tar.bz2 ; /
mv gmp-4.2.1 gmp; /
tar jxvf ../downloads/mpfr-2.3.0.tar.bz2 ; /
mv mpfr-2.3.0 mpfr; /
1、busybox1.13.1的编绎
使用默认配置文件。
make deconfig
需要交叉编绎,修改Makefile
-- CROSS_COMPILE ?=
++ CROSS_COMPILE ?=arm-linux-
--ARCH ?= $(SUBARCH)
++ARCH := arm
make install
busybox默认安装在./_install文件夹下,编绎完之后包括以下文件夹。
.
|-- bin
|-- sbin
`-- usr
|-- bin
`-- sbin
2、建立linux根文件系统
建立脚本:
#!/bin/sh
mkdir myrootfs
cd myrootfs
mkdir var proc sys etc
cd etc
mkdir init.d
touch fstab
echo "#device mount-point type options dump fsck order
proc /proc proc defaults 0 0
sysfs /sys sysfs defaults 0 0
ramfs /var ramfs defaults 0 0" > fstab
chmod 644 fstab
touch inittab
echo "# /etc/inittab
::sysinit:/etc/init.d/rcS
::askfirst:-/bin/sh
::ctrlaltdel:/sbin/reboot
::shutdown:/bin/umount -a -r" > inittab
chmod 644 inittab
cd init.d
touch rcS
echo "#!/bin/sh
mount -a
if [ ! -d /dev/pts ] ; then mkdir -p /dev/pts ; fi
mount -t devpts devpts /dev/pts
#echo /sbin/mdev > /proc/sys/kernel/hotplug
#mdev -s
/bin/hostname -F /etc/network/HOSTNAME" > rcS
chmod 644 rcS
3、dev设备文件的建立
先建立主要的三个设备:
mknod console c 5 1
mknod null c 1 3
mknod zero c 1 5
4、测试
开发板:s3c2440
文件系统:nfs
测试结果:pass
- arm-elf工具链的建立
- Arm-elf编译工具链的编译及Minigui
- Arm-elf编译工具链的编译及Minigui
- 建立 ARM GCC 工具链
- 交叉编译工具链的arm-elf-tools的正确安装(fedora7虚拟机环境)
- ARM-Linux交叉编译工具链的建立
- arm gcc交叉编译工具链建立
- 安装arm-elf交叉编译工具
- arm-elf与arm-linux的区别
- arm-elf与arm-linux的区别
- arm-elf和arm-eabi的区别
- arm-elf和arm-eabi的区别
- arm-elf与arm-linux的区别
- 交叉编译工具[arm-linux-gcc and arm-elf-gcc]
- 如何安装arm-linux与arm-elf交叉工具套件
- 用crosstool-ng建立自己的ARM交叉编译工具链 (适用于S3C6410以及其它处理器)
- arm-linux-gcc(4.6.1)交叉编译工具链的建立
- 用crosstool-ng建立自己的ARM交叉编译工具链 (适用于S3C6410以及其它处理器)
- Question 35: Protected, or private, inheritance, as opposed to public inheritance, models which type of relationship in C++?
- Key word:const in C language
- asp用的xmlhttp方法集合,个人认为很有用
- 学习方法
- 自己动手编写的jquery插件,模仿搜狐汽车图片库展示效果
- arm-elf工具链的建立
- 模板的特化与偏特化
- 恐怖QQ聊天记录【常玩QQ的,胆小的别看】
- main函数之前究竟发生了什么?
- vc 对话框程序里,如何在密码输入框显示为****,屏蔽掉密码
- Java容器类List、ArrayList、Vector及map、HashTable、HashMap的区别与用法
- c# 文件操作 对文件的添加 修改 删除
- 选择适合中国国情的信息防泄漏解决方案
- KDE上启用policykit