2017-02-15 96 views
0

經歷了一段時間,試圖爲基於ARM的Ubuntu Linux目標構建CodeLite。 (在這裏構建指令:http://codelite.org/Developers/Linux)。我從CMAKE得到一個錯誤,說Could not locate GTK2。查看CmakeLists.txt文件,我可以看到這是find_package(GTK2)未能找到GTK2的結果。我想我已經安裝了gtk,根據CodeLite構建指令說明使用命令sudo apt-get install libgtk2.0-dev執行的操作。構建CodeLite的問題

就cmake而言,我不明白「包裝」是什麼。我將如何[手動]在我的文件系統上找到這個軟件包,以及如何讓cmake找到它?

+0

'我怎麼會[手動]找到這個包在我的文件系統上 - [Use dpkg-query](http://askubuntu.com/questions/32507/how-do-i-get-a-list-of-installed-files-from-a-包)。使用這種方法,找到'gtk/gtk.h'文件系統的位置。 – Tsyvarev

+0

良好的通話。我找到了gtk.h.它位於/usr/include/gtk-2.0/gtk/,/usr/include/gtk-3.0/gtk/和/home/ubuntu/wxWidgets3.0/wxWidgets-3.0.2/build/wince/missing/ GTK /。它出現在「丟失」文件夾中的事實是否意味着什麼? –

+0

嗯,但腳本[findGTK2.cmake](https://github.com/Kitware/CMake/blob/master/Modules/FindGTK2.cmake#L289)不會在'/usr/include/gtk-2.0/下搜索'。嘗試在調用'cmake'時將[CMAKE_INCLUDE_PATH](https://cmake.org/cmake/help/v3.7/variable/CMAKE_INCLUDE_PATH.html#variable:CMAKE_INCLUDE_PATH)設置爲給定目錄:'cmake -DCMAKE_INCLUDE_PATH =/usr /包括/ gtk-2.0/...'。查找庫可能需要類似的操作:將[CMAKE_LIBRARY_PATH](https://cmake.org/cmake/help/v3.7/variable/CMAKE_LIBRARY_PATH.html#variable:CMAKE_LIBRARY_PATH)變量設置爲適當的目錄。 – Tsyvarev

回答

0

對於我aarch64的Ubuntu 17.04,庫和頭都在/ usr/lib目錄/ aarch64 Linux的GNU的,所以調用cmake的與他們生產的正確生成文件:

cmake -DCMAKE_INCLUDE_PATH=/usr/lib/aarch64-linux-gnu/ -DCMAKE_LIBRARY_PATH=/usr/lib/aarch64-linux-gnu/ -DCMAKE_BUILD_TYPE=Release .. -DCOPY_WX_LIBS=1