2009年8月3日 星期一

CMAKE入門教學-使用ANDES Toolchains(3)

1. 開發環境:
(1). CPU: Andes RISC CPU core_N12.
(2). 平台: ADP-XC5FF676 V1.1.
(3). Linux OS: Ubuntu9.04.
(4). Toolchains: AndeSight v1.3.3 for Linux.
(5). Embedded Linux2.6.18
2. 目的: 使用CMAKE自動建構makefile,並指定使用ANDSE toolchains,讓編譯完成的程式可以在 Embedded Linux上執行.
3. 範例程式_cmake3:
(1). 我們沿用上一章節CMAKE入門教學-建構較大型的計畫(2)的範例.
http://andescore.blogspot.com/2009/07/cmake-2.html
a. 使用〝/src/CMakeLists.txt〞檔案夾.下載完整程式:
http://cid-b01cb9ac20175eaa.skydrive.live.com/self.aspx/cmake3/cmake3.zip
b. 修改CMakeLists.txt,指定編譯所需要的compile修改內容如下所示.(2). 編譯前,先在根目錄指定Toolchains,使用〝Terminal〞輸入〝source bashrc.nds32le-linux-V0〞,指定編譯路徑.注意: 新開啟〝Terminal〞視窗要重新輸入.(3). 開啟〝Terminal〞,至src檔案夾同一階層處的CMakeLists.txt檔案位置.(4). 輸入〝cmake .〞,產生makefile.(5). 輸入〝make〞,產生執行檔.(6). 在ADP-XC5執行程式:
a. 將〝HelloWorld.adx〞存在SD卡內.
注意:一般SD卡格式都為FAT32,在Linux下無法顯示長檔名,如要支援長檔名請將SD卡format成EXT2或是EXT3格式.format步驟如下所示: http://andescore.blogspot.com/2009/02/format-sd-cardext2.html
b. 因目前ADP-XC5開發板上所使用的OS為AndeSight v1.3.1 Toolchains building 會造成錯誤,請依照Embedded Linux系統(C)_在SD card上執行Embedded Linux http://andescore.blogspot.com/2009/06/embedded-linuxcsd-cardembedded-linux.html執行AndeSight v1.3.3 Toolchains building的OS,再執行cmake3程式.
(7). 輸入〝mount –o mand /dev/cf /tmp〞掛載SD 卡.(8). 輸入〝cd tmp〞至SD卡檔案掛載位置.(9). 輸入〝./HelloWorld.adx〞執行程式.(10). 程式執行完畢後要卸載SD需再根目錄輸入〝umount /tmp〞.4. CMAKE常用的基本指令:
(1). CMAKE_C_COMPILER:指定gcc編譯器.
(2). CMAKE_CXX_COMPILER:指定g++編譯器.


1 則留言:

  1. SD卡格式都為FAT32在Linux顯示長檔名的方式

    mount -t vfat /dev/cf /tmp

    但是 還是比較建議格式化成ext3

    他可做出symbolic link

    以及很好的效能表現

    永遠不用作磁碟重組...

    回覆刪除