我正在編譯一個共享庫,在ld命令上有一個-lGL
。但它在我的系統上找不到libGL.so。 Nvidia包正確設置庫路徑/etc/ld.so.conf.d/
。 即使是ldconfig -p | grep libGL.so
輸出發現:無法找到-lGL,沒有符號鏈接怎麼辦?
libGL.so.1 (libc6,x86-64) => /usr/lib/nvidia-current/libGL.so.1
libGL.so.1 (libc6) => /usr/lib32/nvidia-current/libGL.so.1
libGL.so (libc6,x86-64, OS ABI: Linux 2.4.20) => /usr/lib/x86_64-linux-gnu/libGL.so
libGL.so (libc6,x86-64) => /usr/lib/nvidia-current/libGL.so
libGL.so (libc6, OS ABI: Linux 2.4.20) => /usr/lib32/libGL.so
libGL.so (libc6) => /usr/lib32/nvidia-current/libGL.so
我看了幾乎無處不在,爲了能夠與它聯繫起來,我已經基本解決方案2:
鏈接NVIDIA的libGL.so到標準/ usr/lib位置。對於任何想要編譯一個opengl庫的人來說,這似乎都是錯誤的。爲什麼鏈接器不使用ldconfig緩存?
手動將-L/usr/lib/nvidia-current附加到庫搜索路徑。再一次,錯誤的是,我怎麼知道圖書館可以在所有系統上找到的每一條路徑?
所以我的真正的問題是:什麼是對與圖書館沒有連接在一個標準的位置,但位置已經與/etc/ld.so.conf
註冊標準和自動的方法嗎?
爲什麼這個標記的python? – mkb 2011-12-15 14:30:05
對不起,我在做python擴展。刪除標籤。 – tito 2011-12-15 14:31:15