應用程式引用動態庫編譯提示找不到庫

2021-09-11 06:03:34 字數 367 閱讀 2556

問題的場景是在公司伺服器上編寫demo測試公司內部的庫檔案功能時,發現我的使用者沒有許可權,無法將動態庫複製到usr/lib下,只好嘗試加-l引數,手動制定庫檔案路徑,但是這個-l引數從來都沒有起作用過,依然是在編譯時找不到庫檔案。

最終解決辦法:編譯時新增引數 ./動態庫路徑.so

比如動態庫路徑為trainee/work/sjn/libxipc/libxipc.so

標頭檔案路徑為trainee/work/sjn/

當前目錄為trainee/work/sjn

編譯指令為:gcc main.c -o main -i . ./libxipc/libxipc.so

若涉及多個動態庫,要考慮相互的引用關係,把被包含的庫放到編譯指令的最後。

emacs 找不到應用程式

實際問題時配置emacs ctags進行跳轉 首先開始是執行ctags有問題,原因是沒有安裝global,執行的ctags是安裝emacs附帶裝的 安裝完成後,還是不能找到相應的程式,原因是程式所在的路徑不在emacs的exec path中 然後開啟m x ielm 檢視exec path發現內容如...

opencv程式編譯後執行找不到庫

方法一 在ubuntu下編譯opencv程式後,執行報下面到錯誤 error while loading shared libraries libopencv core.so.2.4 cannot open shared object file no such file or directory 解...

編譯時找不到動態庫解決方案

在linux下編譯程式經常會出現找不到動態庫的問題,通常有以下幾種解決方法 進行原始碼安裝,通過 prefix usr x 可以自定義安裝目錄 configure prefix foo 預設時會安裝在 usr local目錄下 檢測安裝環境 生成makefile make 編譯源 生成一些動態 靜態...