原文:未定義的引用_G++ _GLIBCXX_USE_CXX11_ABI 編譯報錯:std::basic_string與std::__cxx11::basic_string無法匹配的問題

原因: GCC 在編譯時會將std::string類型按c 下std:: cxx ::basic string lt char gt 來處理,這時如果你調用的庫在編譯時未啟用c 特性則其中的std::string實際上是std::basic string lt char gt ,如果將c 下的string當作參數傳入非c 的庫時,就會出現error: cannot convert const s ...

2021-11-23 16:27 0 1505 推薦指數:

查看詳情

`_GLIBCXX_USE_CXX11_ABI`有什么作用

最近遇到個問題,在鏈接OpenVINO的時候,需要將libinference_engine.so與libinference_engine_legacy.so都鏈接進去,但如果在CMakeLists里設置add_definitions(-D _GLIBCXX_USE_CXX11_ABI=0),就無法 ...

Tue Nov 23 04:56:00 CST 2021 0 772
gcc編譯鏈接std::__cxx11::stringstd::string問題

今天公司的小伙伴遇到一個問題,這里做一個記錄。 問題是這樣的,他編譯了公司的基礎庫,然后在程序中鏈接的時候遇到點問題報錯找不到定義。 用到的函數聲明大概是這樣的: 編譯的時候顯示找不到定義報錯大概是這樣的: 我直接寫了一個一樣的function函數的代碼,然后使用strings ...

Fri Aug 09 21:55:00 CST 2019 0 2926
 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM