2013-02-10 14 views
1

我是unix的新手。 這是我第一次嘗試在Mac上使用外部庫(Ogre3D)。我不想將所有.lylib文件轉儲到/ usr/lib目錄中,因爲我可能希望在不需要它們的情況下刪除這些文件,並且很難將它們區分爲其他庫文件。當我在/ usr/lib /目錄下創建一個名爲Ogre的新文件夾來託管我的Ogre庫文件時,似乎無法在使用-l標誌指定位置編譯文件時訪問這些文件。所以我想知道是否有必要將所有文件放在/ usr/lib /而不是放在/ usr/lib /裏面的文件夾中?在Unix中使用靜態庫的更好的做法?

我想知道如果可以將includes文件夾直接放到/ usr/includes /中,那麼我可以訪問頭文件嗎?或者我必須將所有標題放在/ usr/includes /?

+0

我認爲,你應該寧可避免使用靜態庫,只有使用共享庫。 http://www.tldp.org/HOWTO/Program-Library-HOWTO/ – 2013-02-10 08:50:27

+0

而你的問題提到了一個Mac,但被標記爲Linux ......爲什麼? (你在Mac筆記本電腦上運行Linux?) – 2013-02-10 08:55:09

回答

2

所以我想知道是否有必要把所有的文件放在/ usr/lib /而不是把它們放到/ usr/lib /裏面的文件夾中?

沒有-L<dir>鏈接器標誌,它使編譯器搜索dir以及標準庫路徑。

我想知道如果有可能將includes文件夾直接放到/ usr/includes /中,我可以訪問頭文件嗎?

更多選擇在這裏。要麼把他們然後

#include <foo/foo.h> 

(首選)或把它們,使用-I/usr/include/foo編譯器標誌,並寫

#include <foo.h> 
+0

這是一個明確的答案!非常感謝! – 2013-02-10 16:10:42

相關問題