我在沙箱目錄中安裝了一些共享/動態庫。我正在構建一些鏈接庫的應用程序。我在這方面遇到了OSX和Linux之間的區別,我不確定(最好的)解決方案是什麼。如何鏈接本地目錄中的共享庫,OSX vs Linux
在OSX上,庫自身的位置被記錄到庫中,以便如果應用程序鏈接到庫,則可執行文件知道在運行時在哪裏查找庫。這與我的沙盒中預期的一樣,因爲可執行文件在那裏查找,而不是系統範圍的安裝路徑。
在Linux上,我無法使其工作。顯然,圖書館本身並不存在圖書館的位置。據我瞭解,您必須將包含庫的文件夾添加到/etc/ld.so.conf,並通過運行ldconfig重新生成ld緩存。
這似乎並沒有爲我做伎倆,因爲我的圖書館位於用戶主目錄內。它看起來像ldconfig不喜歡,這實際上是有道理的。
我該如何解決這個問題?我不想將這些庫移出我的沙箱。
我莫名其妙地被使用以爲LDCONFIG LD_LIBRARY_PATH。我不知道你可以動態改變它。它像一個魅力。謝謝! – 2010-10-27 14:14:46
我投了這個答案,我的錯誤:-p – 2011-04-14 10:14:02
'-Wl,-rpath,/ path/to/sandbox' – Jed 2014-02-10 06:29:40