centOS 平台的 RTEMS 编译安装
来源:互联网 发布:末代沙皇的公主们 知乎 编辑:程序博客网 时间:2024/06/06 18:18
centOS 5.8
RTEMS 4.10.2
VirtualBox 4.20
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1,虚拟机virtual box 安装centOS,一切安装默认提示进行。
2,安装完之后要继续安装开发工具包,Application --> Add/Remove Softwart --> Browse / Development 确认 Development Libraries 和 Development Tools 都已经选中安装,没有就安装,这包含了编译软件常用的工具,不然的话编译源代码非常郁闷。
3,安装虚拟机的增强工具,保证和window通过文件夹就能传递文件,这个很重要。
点击虚拟机菜单 Devices --> Install Guest Addition 则自动加载光盘,加载在 /media/
# cd /media/VBOXADDITIONS_4.2.0_80737 这里修改为你自己的版本
# ./VboxLinuxAdditions.run
一般如果提示没有 kernel-head 就按照提示用 yum 安装就行了。如果前面的工具包安装了的话,这里的编译就没有问题的。
在虚拟机的设置 Settings --> Shared Folders 中设定window需要共享的文件夹
搞定后重启。应该在 /media/sf_share 中访问到window的文件(需要root权限)
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
最简单通过FTP下载,包括源代码和doc文档
ftp://ftp.rtems.org/pub/rtems/4.10.2/
rtems-4.10.2.tar.bz2
rtemsdocs-4.10.2.tar.bz2
rtemsdocs-4.10.2\share\rtems\pdf\started.pdf 就是教怎么安装的(基于sparc 架构)
下面的说白了就是根据上面的指示来做。
下载现成的工具链根据具体的版本选择,我这里是
ftp://ftp.rtems.org/pub/rtems/linux/4.10/centos/5/i386/
目录下面的,目标是 arm (编译smdk2410 bsp),主要是架构相关的,和common类
rtems-4.10-arm-rtems4.10-binutils-2.20.1-3.el5.i386.rpmrtems-4.10-arm-rtems4.10-gcc-4.4.7-1.el5.i386.rpmrtems-4.10-arm-rtems4.10-gcc-c++-4.4.7-1.el5.i386.rpmrtems-4.10-arm-rtems4.10-gcc-libgcc-4.4.7-1.el5.i386.rpmrtems-4.10-arm-rtems4.10-gcc-libstdc++-4.4.7-1.el5.i386.rpmrtems-4.10-arm-rtems4.10-gdb-7.2-1.el5.i386.rpmrtems-4.10-arm-rtems4.10-newlib-1.18.0-29.el5.i386.rpmrtems-4.10-binutils-common-2.20.1-3.el5.i386.rpmrtems-4.10-gcc-common-4.4.7-1.el5.i386.rpmrtems-4.10-gdb-common-7.2-1.el5.i386.rpmrtems-4.10-newlib-common-1.18.0-29.el5.i386.rpm
rtems-4.10-autoconf-2.68-3.el5.noarch.rpm
rtems-4.10-automake-1.11.1-2.el5.noarch.rpm
注意,有些安装是有顺序的,例如先安装common包,再安装具体的包。可以按照下面的顺序
# rpm -U rtems-4.10-binutils-common-2.20.1-3.el5.i386.rpm
# rpm -U rtems-4.10-arm-rtems4.10-binutils-2.20.1-3.el5.i386.rpm
# rpm -U rtems-4.10-gcc-common-4.4.7-1.el5.i386.rpm
# rpm -U rtems-4.10-newlib-common-1.18.0-29.el5.i386.rpm
# rpm -U rtems-4.10-arm-rtems4.10-newlib-1.18.0-29.el5.i386.rpm
# rpm -U rtems-4.10-arm-rtems4.10-gcc-libgcc-4.4.7-1.el5.i386.rpm
# rpm -U rtems-4.10-arm-rtems4.10-gcc-libstdc++-4.4.7-1.el5.i386.rpm
# rpm -U rtems-4.10-arm-rtems4.10-gcc-4.4.7-1.el5.i386.rpm
# rpm -U rtems-4.10-arm-rtems4.10-gcc-c++-4.4.7-1.el5.i386.rpm
# rpm -U rtems-4.10-gdb-common-7.2-1.el5.i386.rpm
# rpm -U rtems-4.10-arm-rtems4.10-gdb-7.2-1.el5.i386.rpm
# rpm -U rtems-4.10-autoconf-2.68-3.el5.noarch.rpm
# rpm -U rtems-4.10-automake-1.11.1-2.el5.noarch.rpm
提示 warning NOKEY 可以安装key,执行如下命令 (或者干脆不管它)
# rpm --import ftp://ftp.rtems.org/pub/rtems/linux/gpg-pubkey-69ce4a83-44cc2b30
全部安装完之后,默认安装在 /opt/rtems-4.10
将工具加入环境变量中,具体办法自己找,我的办法是
# vim ~/.bashrc
在最后加入
export PATH=$PATH:/opt/rtems-4.10/bin
注销(log out,不用重启)后重新登录
# echo $PATH
# arm-rtems4.10-gcc -v
应该能打印出gcc的版本号,表示一切都搞好了。
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
编译 RTEMS
# tar xjf rtems-4.10.2.tar.bz2
# cd rtems-4.10
# ./bootstrap -c
# ./bootstrap
# cd ..
# mkdir build-rtems# cd build-rtems
# ../rtems-4.10.2/configure --target=arm-rtems4.10 --disable-posix --disable-networking --disable-cxx --enable-rtemsbsp=smdk2410
# make
# make install
默认安装在 /opt/rtems-4.10/ 目录下面。具体支持哪些参数可以到源代码目录的 README.configure 文件查看。
安装成功的话,在 /opt/rtems-4.10/arm-rtems4.10 产生了 smdk2410的文件。
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
编译hello world
下载例子程序
ftp://ftp.rtems.com/pub/rtems/4.10.2/
examples-v2-4.10.2.tar.bz2 (有可能会更新)
需要先设置环境变量
export RTEMS_MAKEFILE_PATH=/opt/rtems-4.10/arm-rtems4.10/smdk2410
最后进入hello world 目录编译就可以了。
fin
Etual 2012-11-28
- centOS 平台的 RTEMS 编译安装
- rtems交叉编译工具的安装
- CentOS下的RTEMS编译环境的创建
- 学习RTEMS前的准备(2)----在CentOS 6.3下安装RTEMS工具链
- RTEMS连载(2) RTEMS的编译
- 学习RTEMS前的准备(1)----Win7下硬盘安装CentOS 6.3
- 基于Qemu的RTEMS仿真平台搭建
- RTEMS 最新基于ubuntu和RSB编译环境的安装配置
- FreeBSD下RTEMS编译环境的创建
- RTEMS 编译环境的建立(Cygwin)
- RTEMS 的 AT91SAM9260 移植(8): 编译
- 使用RTEMS Source Builder 编译RTEMS-4.11的开发工具链
- Ubuntu下编译RTEMS
- 对于beaglebone black板的BSP的rtems编译
- rtems bsp编译cortex-m3指令时遇到的问题
- rtems的GNU(GCC)编译环境配置
- 基于ubuntu的rtems-libbsd编译运行beagleboneblack bsp
- centos下mysql的编译安装
- lsb_release -a 查询系统版本
- ExpandEnvironmentStrings 函数
- 《Linux内核编程》第六章:Linux设备驱动中的并发控制
- Fragment:小Activity(带自己Layout的Activity片段)----可被Activity复用,自己生命周期
- 使用OpenOffice .org(Portable)将WORD转换为PDF
- centOS 平台的 RTEMS 编译安装
- oracle 动态sql执行-EXECUTE IMMEDIATE
- REST服务开发实战
- 混合图的欧拉回路一般求解方法
- SMTP协议
- 文件操作学习
- ???DNS解析故障???
- linux socket中的select用法
- synchronized 关键字