2014-03-30 28 views
0

我一直在努力嘗試將Allegro 5鏈接到Ubuntu上的Eclipse幾個小時。是的,我一直在尋找,但我必須失去了一些東西真的很簡單,你們一定會找到它的時候了,所以請幫我...將Allegro 5與Eclipse上的Eclipse鏈接起來

我創建這樣的項目: enter image description here

當我嘗試鏈接任何庫(下面的例子) enter image description here

編譯我的程序時,我得到這個錯誤! enter image description here

這裏是與正確編譯庫的相關文件夾的圖片: enter image description here


編輯:

如果您正在使用這個掙扎,以及所有我有要做的事很簡單,你只需要將這些添加到你的庫中: enter image description here

這裏是列表,以便您可以複製並粘貼:

快板
allegro_acodec
allegro_audio
allegro_color
allegro_dialog
allegro_font
allegro_image
allegro_main
allegro_memfile
allegro_physfs
allegro_primitives
allegro_ttf

+0

-lallegro。沒有路徑名。 – bmargulies

+0

@bmargulies對不起,你能解釋一下我需要做什麼嗎? –

+0

用-lallegro替換-l/usr/something/liballegro.so。 – bmargulies

回答

0

你應該走出eclipse,只是使用命令行,直到你有這個排序。 Eclipse只是混淆命令行的一種複雜方式。

若要鏈接。所以,你需要:

  • -LpathToLibrary
  • -lnameOfLibrary,與 'LIB' 和 '所以' 剝去。

如果您的庫位於/ usr/lib中,而這正是您嘗試的內容所建議的,那麼您根本不需要-L。如果名稱是'liballegro5.so',則需要-lallegro5。

我建議:

發現在/ usr -name liballegro.so -print

如果答案是 '/usr/lib/liballegro.so',那麼你需要的是-lallegro。

如果答案是/SOMETHINGELSE/liballegro.so,那麼你需要-L/SOMETHINGELSE /。

如果你沒有找到liballegro,那麼你需要弄清楚它是否實際上是liballegro5.so。

您也可以停止使用-L和-l,並將.so的整個路徑放在那裏。

+0

感謝您的幫助!我設法使用命令行來編譯程序,例如'g ++ main.cpp -o test \'pkg-config --libs allegro-5.0 allegro_ttf-5.0 \''。但我希望能夠使用eclipse來編譯,因爲我有更多的源文件的項目..你有什麼我可能會缺少的能夠通過eclipse編譯的提示現在我們知道成功編譯的命令它在命令行? –

+0

那麼,當你運行它時,那個pkg-config命令會打印什麼呢?無論它打印什麼,您都可以添加到eclipse配置中。 – bmargulies

+0

感謝您的幫助!我終於設法使用Eclipse進行編譯!而不是鏈接/usr/lib/allegro*.so我只需要添加名稱,根本沒有路徑:http://i.imgur.com/5JIAiWh.png –