全部博文(19)
分类: 嵌入式
2015-06-15 13:27:09
RTEMS开发环境搭建——基于ubuntu系统
2015年06月14日 星期日
本文只是记录本人安装搭建RTEMS-4.10.2的开发环境的过程,并未对其过程原理做过多研究。
1、本人是基于ubuntu 12.04 版系统,太新的系统会出现各种各样的不兼容问题,代码编译过程中会出现很多错误,建议采用ubuntu 13.10之前的版本;
2、采用的RTEMS-4.10.2 版源码;
3、以下开始介绍安装过程(编译过程使用非root权限,特殊说明除外):
(1)通过apt源安装texinfo;
sudo apt-get install texinfo
(2)从ftp://ftp.rtems.com/pub/rtems/SOURCES/4.10/ 官网下载如下源码;
binutils-2.20.1.tar.bz2
binutils-2.20.1-rtems4.10-20140214.diff
newlib-1.18.0.tar.gz
newlib-1.18.0-rtems4.10-20130320.diff
gcc-4.4.7.tar.bz2
gcc-4.4.7-rtems4.10-20130320.diff
gcc-core-4.4.7.tar.bz2
gcc-core-4.4.7-rtems4.10-20120314.diff
(3)从 ftp://ftp.gnu.org/gnu 官网下载如下源码;
gmp-5.0.4.tar.bz2
mpfr-2.4.2.tar.bz2
mpc-1.0.3.tar.gz
(4)顺序安装gmp,mpfr,mpc;
tar -xjf gmp-5.0.4.tar.bz2
mkdir build_gmp
cd build_gmp
../gmp-5.0.4/configure -prefix=/usr/local/gmp(此为安装目录)
make
make check
make install (需要root权限)
tar -xjf mpfr-2.4.2.tar.bz2
mkdir build_mpfr
cd build_mpfr
../mpfr-2.4.2/configure --prefix=/usr/local/mpfr --with-gmp=/usr/local/gmp(引用gmp)
make
make check
make install (需要root权限)
tar -xzf mpc-1.0.3.tar.gz
mkdir build_mpc
cd build_mpc
../mpc-1.0.3/configure --prefix=/usr/local/mpc --with-gmp=/usr/local/gmp --with-mpfr=/usr/local/mpfr (引用gmp,mpfr)
make
make install (需要root权限)
(5)添加环境变量
在 /etc/profile 末尾添加如下内容:
export LD_LIBRARY_PATH=/usr/local/gmp/lib:/usr/local/mpfr/lib:/usr/local/mpc/lib:$LD_LIBRARY_PATH
source /etc/profile (更新环境变量)
(6)安装binutils,gcc;
tar -xjf binutils-2.20.1.tar.bz2
cd binutils-2.20.1
cat ../binutils-2.20.1-rtems4.10-20140214.diff | patch -p1
cd ..
mkdir build_binutils
cd build_binutils
../binutils-2.20.1/configure --target=arm-rtems4.10 --prefix=/opt/rtems-4.10 --disable-werror
make
make install (需要root权限)
在/etc/bash.bashrc末尾插入一行:
export PATH=/opt/rtems-4.10/bin:${PATH}
再执行命令:
source /etc/bash.bashrc(更新环境变量)
tar -xjf gcc-4.4.7.tar.bz2
cd gcc-4.4.7
cat ../gcc-4.4.7-rtems4.10-20130320.diff | patch -p1
cd ..
tar -xjf gcc-core-4.4.7.tar.bz2
cd gcc-4.4.7
cat ../gcc-core-4.4.7-rtems4.10-20120314.diff | patch -p1(过程中回答:y)
cd ..
tar -xzf newlib-1.18.0.tar.gz
cd newlib-1.18.0
cat ../newlib-1.18.0-rtems4.10-20130302.diff | patch -p1
cd ../gcc-4.4.7
ln -s ../newlib-1.18.0/newlib .
cd ..
mkdir build_gcc
cd build_gcc
../gcc-4.4.7/configure --target=arm-rtems4.10 --with-gnu-as --with-gnu-ld --with-newlib --verbose --enable-threads --enable-languages="c,c++" --prefix=/opt/rtems-4.10 --with-gmp=/usr/local/gmp --with-mpfr=/usr/local/mpfr
make all
make info
make install(需要root权限)
至此,安装环境就算结束。
4、验证环境是否正确安装
(1)从RTEMS官网ftp://ftp.rtems.com/pub/rtems/4.10.2/下载rtems-4.10.2的源码;
(2)编译源码;
tar -xjf rtems-4.10.2.tar.bz2
mkdir build_rtems
cd build_rtems
../rtems-4.10.2/configure --target=arm-rtems4.10 --enable-posix --enable-networking --enable-cxx --enable-rtemsbsp=smdk2410 --prefix=/opt/rtems-4.10/
make all
sudo -s (切换至root帐户)
make install (需要在root帐户下执行,sudo会报错)
如果没有出现错误,则表示成功。
至此,结束!