開發環境:Ubuntu 14.04 SylixOS源碼版本:1.6.7
一、搭建環境
$ sudo apt-get udpate
$ sudo apt-get install build-essential
$ sudo apt-get install vim
$ sudo apt-get install git
二、下載下傳源碼
本實驗以mini2440為例,源碼包括以下内容:
1、base:SylixOS核心代碼;
2、bsp:闆級開發包,不同開發闆對應不同的bsp,包含開發闆的各種驅動;
3、示例程式;
4、mini2440模拟器;
$ mkdir SylixOS
$ cd SylixOS
$ git clone http://git.sylixos.com/repo/sylixos-base.git
$ git clone http://git.sylixos.com/repo/bspmini2440.git
$ git clone http://git.sylixos.com/repo/examples.git
$ git clone http://git.sylixos.com/repo/tools.git
$ git clone http://git.sylixos.com/repo/qemu-mini2440.git
$ cd sylixos-base/
$ git submodule init
$ git submodule update
三、安裝交叉編譯鍊
1、下載下傳安裝編譯鍊
$ wget https://launchpad.net/gcc-arm-embedded/4.9/4.9-2015-q1-update/+download/gcc-arm-none-eabi-4_9-2015q1-20150306-linux.tar.bz2
$ sudo tar xvjf gcc-arm-none-eabi-4_9-2015q1-20150306-linux.tar.bz2 -C /usr/lib/
$ sudo mv /usr/lib/gcc-arm-none-eabi-4_9-2015q1/ /usr/lib/gcc-arm-none-eabi
SylixOS對gcc編譯器做了一些修改
$ sudo mv /usr/lib/gcc-arm-none-eabi/arm-none-eabi/include/sys/reent.h /usr/lib/gcc-arm-none-eabi/arm-none-eabi/include/sys/reent.h.bak
$ sudo cp SylixOS/tools/arm-none-eabi-patch/4.9/reent.h /usr/lib/gcc-arm-none-eabi/arm-none-eabi/include/sys/
修改環境變量
$ vim ~/.bashrc
在最後一行添加
export PATH=/usr/lib/gcc-arm-none-eabi/bin:$PATH
儲存退出,重新開機終端
$ arm-none-eabi-gcc -v
出現如下資訊表示交叉編譯鍊安裝成功
2、編譯sylixos-base工程
$ cd SylixOS/sylixos-base/
$ vim config.mk
更改base路徑和工具鍊
編譯
$ make V=s -j8