RTEMS的编译
%A 摘要
%A
%A 本节主要介绍RTEMS编译的步骤。
%A
%A 交叉编译环境建立好以后,编译就很简单了,解压rtems的文件夹
%A
%A $tar xjvf rtems4.6.2.tar.bz2
%A
%A 建立rtems的编译路径:
%A
%A $ mkdir rtems_i386
%A
%A 这里将以386为例进行介绍,毕竟386最容易实践,此外,i386以上的CPU体系结构远比常见的嵌入式CPU复杂。熟悉了386类型rtems的编译过程,其他平台建立过程可依此类推。
%A
%A 首先要输出刚才编译好的工具链:
%A
%A export PATH=<INSTALL_POINT>/bin:${PATH}
%A
%A 这里<INSTALL_POINT>是工具链所在的目录(也就是arm-rtems-gcc这些可执行文件的目录),对于FreeBSD用户,这一步可以忽略,对于依照刚才步骤建立工具链的读者,<INSTALL_POINT>对应的是: /home/ray/embedded/toolchain/
%A configure 指令的格式为:
%A
%A ../rtems-4.6.2/configure --target=<TARGET_CONFIGURATION> \
%A --disable-posix --disable-networking --disable-cxx \
%A --enable-rtemsbsp=<BOARD_SUPPORT_PACKAGE>\
%A --prefix=<INSTALL_POINT>
%A 对于FreeBSD用户
%A
%A 可以使用下面的命令:
%A
%A ../rtems-4.6.2/configure --target=i386-rtems \
%A --enable-rtemsbsp=i386ex \
%A --prefix=/home/ray/rtems/rtems-build
%A
%A 然后使用gmake指令产生二进制代码
%A
%A $ gmake RTEMS_BSP=i386ex
%A
%A 产生i386的库代码
%A
%A $ gmake RTEMS_BSP=pc686
%A
%A 产生奔腾pro以上版本CPU的二进制代码。 需要说明,缺省状态产生的目标文件是带有调试信息的,如果要生成优化代码,configure的时候可以制定gcc的优化选项,比如:
%A
%A CFLAGS_FOR_BUILD = -O1 CXXFLAGS_FOR_BUILD=-O1 CFLAGS_FOR_HOST=-O1\
%A CXXFLAGS_FOR_HOST=-O1 CFLAGS_FOR_TARGET=-O1 CXXFLAGS_FOR_TARGET=-O1
%A
%A 此外也可以指定gmake的选项,例如:
%A
%A $ gmake RTEMS_BSP=pc686 CFLAGS="-O1"
%A
%A
%A 对于Linux用户
%A
%A 进入编译目录:
%A
%A $ cd rtems-i386
%A
%A 进行配置
%A
%A ../rtems-4.6.2/configure --target=i386-rtems --disable-posix --disable-networking --disable-cxx --enable-rtemsbsp=i386ex --prefix=/home/ray/rtems/rtems-build
%A
%A 然后进行编译:
%A
%A $gmake RTEMS_BSP="bsp1 bsp2 ...”
%A
%A 例如:
%A
%A gmake RTEMS_BSP=pc586
%A 需要说明,在大部分linux版本下面,缺省的make就是gmake!也可使用下面的配置命令
%A 例一:
%A
%A $ ../rtems-4.6.2/configure --target=i386-rtems --disable-posix --disable-networking --disable-cxx --enable-rtemsbsp=pc386 -- prefix=/home/ray/rtems/rtems-build
%A $ gmake
%A
%A 这个例子
%A 直接产生pc386代码
%A 例二:
%A
%A ../rtems-4.6.2/configure --target=i386-rtems \
%A --enable-rtemsbsp= i386 \
%A --prefix=/home/ray/rtems/rtems-build
%A make all install
%A
%A 产生全部的i386的BSP(包括pc386,pc586,pc686......)
%A
%A 例三:
%A
%A ../rtems-4.6.2/configure --target=i386-rtems \
%A --disable-posix --disable-networking --disable-cxx \
%A --enable-rtemsbsp=i386ex \
%A --prefix=/home/ray/rtems/rtems-build
%A
%A 这里工具链安装在/home/ray/embedded/toolchain/目录下面。
%A 例四:
%A
%A ../rtems-4.6.2/configure --target=i386-rtems \
%A --disable-posix --disable-networking --disable-cxx \
%A --enable-rtemsbsp=pc686\
%A --prefix=/home/ray/rtems/rtems-build
%A
%A 产生pc686的makefile。
%A
%A 注意空格!! =号后不能有空格,\前一定要有空格
%A%A
%A
*博客内容为网友个人发布,仅代表博主个人观点,如有侵权请联系工作人员删除。