我試圖運行一些預編譯的代碼,但我得到了以下錯誤:執行二進制:`GLIBCXX_3.4.11' 未找到
./bin/stipdet: /cm/shared/apps/gcc/4.3.4/lib64/libstdc++.so.6: version `GLIBCXX_3.4.11' not found (required by ./bin/stipdet)
我一派錯誤,看到一些人解決刪除libstdc++.so.6
並添加指向usr/local/lib
的新動態鏈接也會出現類似的問題。但我沒有系統上的root訪問權限,所以我不能在該目錄中添加/刪除文件。
有沒有人知道解決這個問題的另一種方法?
UPDATE:
我嘗試添加的libstdc++.so.6
另一個版本的目錄到LD_PRELOAD
,但它沒有工作對我來說,它仍然使用從錯誤的目錄中的文件。
當我在LD_LIBRARY_PATH
前面加上正確的目錄時,會發生同樣的情況。最後,我還嘗試從LD_LIBRARY_PATH
中刪除所有其他內容,然後添加正確的目錄(只是爲了嘗試)。這似乎解決了原來的錯誤! 但現在我得到同樣的錯誤在不同的位置:
./bin/stipdet: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.9' not found (required by /var/scratch/user/local/lib/libopencv_features2d.so.2.2)
顯然opencv
使用不同glibcxx
版本,所以切換到另一個libstdc
休息opencv
。有沒有解決這個問題的方法?
謝謝。我用你的建議結果更新了我的問題。當我輸入uname時,它現在會崩潰: – Bart 2011-06-08 21:23:04