RTEMS開發環境搭建——基於FreeBSD系統

RTEMS開發環境搭建——基於FreeBSD系統c++

2015年12月08日  星期二shell

本文是記錄安裝RTEMS-4.10.2開發環境的文章,且僅僅是記錄,並未對其過程作過多原理方面的研究。 bash

一、本文采用的FreeBSD 9.3版系統,系統自帶的gcc-4.2.1編譯器,並將由它完成環境搭建中各個程序的編譯工做;測試

二、本文采用RTEMS-4.10.2版源碼;網站

 三、下面介紹開發環境的安裝過程:ui

(1)安裝bash開發

FreeBSD默認採用的是/bin/csh和/bin/sh兩種shell,但在我測試的過程當中,發現這兩種shell都不能成功編譯RTEMS源代碼;而在使用bash時卻能成功。get

所以,須要首先安裝bash,能夠採用port方式安裝:編譯器

cd  /usr/port/shell/bash源碼

make  install

再利用chsh命令,將用戶的默認shell修改成bash,此處能夠參考FreeBSD相關手冊;

 

(2)安裝GNU make

因爲FreeBSD 9.3默認使用的Berkeley make,而咱們後續要編譯的各個程序都是採用的GNU make管理的,所以咱們須要安裝GNU make;

從ftp://ftp.gnu.org網站下載make-3.82.tar.bz2源碼並安裝,操做以下:

tar  -xjf  make-3.82.tar.bz2

mkdir  build_make

cd  build_make

../make-3.82/configure

make

make  install

安裝完成後,系統中就同時存在make和gmake了,後面默認狀況下均採用gmake管理。

 

(3)安裝texinfo

從ftp://ftp.gnu.org網站下載texinfo-4.9.tar.gz源碼並安裝,操做以下:

tar  -xzf  texinfo-4.9.tar.gz

mkdir  build_texinfo

cd  build_texinfo

../texinfo-4.9/configure

gmake

gmake  install

 

(4)安裝gmp, mpfr, mpc庫

從ftp://ftp.gnu.org網站下載gmp-5.0.4.tar.bz2 , mpfr-2.4.2.tar.bz2 , mpc-1.0.3.tar.gz源碼,按如下順序安裝:

 

a.安裝gmp-5.0.4:

tar  -xjf  gmp-5.0.4.tar.bz2

mkdir  build_gmp

cd  build_gmp

../gmp-5.0.4/configure  --prefix=/usr/local/gmp(prefix用於指定安裝目錄)

gmake

gmake  install

 

b.安裝mpfr-2.4.2:

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)

gmake

gmake  install

 

c.安裝mpc-1.0.3:

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)

gmake

gmake  install

 

d.添加環境變量

在 /etc/profile 末尾添加以下內容:

export  LD_LIBRARY_PATH=/usr/local/gmp/lib:/usr/local/mpfr/lib:/usr/local/mpc/lib: $LD_LIBRARY_PATH

source  /etc/profile (更新環境變量)

 

(5)安裝binutils,  gcc

從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

 

a.安裝binutils:

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

gmake

gmake  install (須要root權限)

 

在~/.profile末尾插入一行:

export  PATH=/opt/rtems-4.10/bin:${PATH}

再執行命令:

source  ~/.profile (更新環境變量)

 

b.安裝gcc:

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  -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

gmke  all

gmake  info

gmake  install(須要root權限)

 

以上所有編譯並安裝成功後,編譯環境的安裝過程即結束。

 

四、驗證環境是否正確安裝

(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/  

gmake  all

su  root(切換至root賬戶)

gmake  install (root權限)

 

若是沒有出現錯誤,則表示成功。

至此,結束!

相關文章
相關標籤/搜索