libglib-2.0.so: error adding symbols: DSO missing from command line

libglib-2.0.so: error adding symbols: DSO missing from command line eror

開發環境:ubuntu
版本:14.04
gcc版本:5.4.5

問題描述

在編譯licode的example時,遇到如上錯誤,具體是libnice庫依賴了libglib-2.0,erizo又依賴了libnice,可執行文件又依賴了erizo.so,編譯生成可執行文件的時候,報錯找不到libglib-2.0.so

解決方案:

1,顯示的添加libglib-2.0.so,這種方式太麻煩,需要手動添加很多庫;
2,使用-Wl,--copy-dt-needed-entries編譯參數,讓GCC自己遞歸查找,設置方式入下,以cmake設置爲例

set(CMAKE_CXX_FLAGS "-g -Wall -std=c++11 -Wl,--copy-dt-needed-entries ${ERIZO_CMAKE_CXX_FLAGS}")
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章