使用CMake進行交叉編譯
為了在NAO上執行您的程式碼,需要進行交叉編譯。目前,只有在Linux裡才能進行交叉編譯。使用這一編譯的目的是為了保證編譯時使用正確的優化標誌,以及使用正確的庫版本進行連結。
方法/步驟
現在,您無法再寫入“/opt/naoqi/”,而是應該把個人資料放入“/home/nao”。
從Aldebaran網站下載並解壓Aldebaran最新的交叉工具鏈(cross-toolchain),並儲存在“/path/to/ctc/”裡。交叉工具鏈包含編譯NAOqi模組所需的所有工具,以及其它與機器人有關的庫和二進位制。
存檔檔案的根資料夾裡有一個“toolchain-geode.cmake”可供使用。它將被傳遞至Cmake,而不是“toolchain-pc.cmake”。這是交叉編譯和編譯的唯一區別。
在一個交叉構建目錄裡配置Cmake(例如“buildcross”,而不是“build”),並把“toolchain-geode.cmake”檔案規定為工具鏈檔案。
以下步驟與編譯相同。
舉例:
$~ cd /path/to/sources $~ mkdir buildcross $~ cd buildcross $~ cmake -DCMAKE_TOOLCHAIN_FILE=/path/to/ctc/toolchain-geode.cmake .. $~ make
除錯
在Linux下,您需要配置CMake(使用ccmake或cmake-gui),並把CMAKE_BUILD_TYPE變數設定為"DEBUG"
在Windows下,您只需選擇"debug"作為構建配置。
注意:
一般不支援"MinSizeRel"和"RelWithDebugInfo"配置。