2015-08-14 45 views
0

問題開始設置LD_LIBRARY_PATH「致命的:無法找到的‘https’遠程助手」不想每次當混帳是給下面的錯誤消息

解決此我不得不先編譯libcurl的重新編譯混帳。在編譯git時,我設置了CPPFLAGS和LDFLAGS來包含libcurl庫和頭文件的路徑。 Git編譯成功,我能夠刪除上述錯誤信息。

但是,要運行上述命令,我首先需要設置LD_LIBRARY_FLAG來定義自定義libcurl文件夾的路徑。有沒有辦法,我沒有必要在執行git命令之前爲每個用戶設置此標誌。

回答

1

有幾種選擇。

您可以將庫放入系統庫目錄,也可以將庫的位置添加到系統目錄。

一個更好的選擇(更安全,不需要超級用戶權限)是告訴鏈接器在二進制文件中設置一個「rpath」,將目錄燒寫到可執行文件中,所以你不需要使用LD_LIBRARY_PATH 。您可以通過使用-rpath鏈接器選項或在鏈接時設置LD_RUN_PATH環境變量來完成此操作。

另一種選擇是簡單地避免動態鏈接到libcurl.so,通過鏈接到靜態libcurl.a存檔代替。

+0

奇怪的是,當我將二進制文件複製到另一臺服務器上時,沒有我的設置ld_library_Path。但在編譯的服務器上,我需要設置它。兩臺服務器都具有相同的配置。 – Raj