我正在Linux下開發一個C++程序。我希望把一些東西(具體而言,LLVM位碼文件,但是這並不重要)在圖書館,所以我想下面的目錄結構:如何找到「我的」lib目錄?
/somewhere/bin/myBin
/somewhere/lib/myLib.bc
如何找到lib目錄?我試圖計算從argv[0]
的相對部分,但如果/somewhere
在我的PATH
中,argv[0]
將只包含myBin
。有什麼方法可以獲得這條路嗎?或者我必須在編譯時設置它?
GNU autotools如何處理這個問題?如果我將--prefix
選項提供給./configure
,會發生什麼情況?
編輯:字庫是有點在我的情況產生誤導。我的庫由LLVM位碼組成,所以它不是一個實際的(共享)對象文件,只是我想從我的程序打開的一個文件。您可以將其視爲圖像或文本文件。
如果您的庫是靜態的,只需添加-L your/lib/dir;如果它是動態的,你可以有一個LD_LIBRARY_PATH等...... – 2012-03-24 11:59:22
正如我所說,該庫是一個LLVM位碼文件,所以這些都沒有幫助。把它想象成我想從我的程序中讀取的圖像或文本文件。 – 2012-03-24 12:29:30