clang忽略警告

使用clang的時候,出現這樣的警告:

warning LNK4217:

本地定義的符號 __std_terminate 在函數 "int `public:static unsigned __int64 __cdecl std::char_traits<char>::length(char const * const)'::`1'::dtor$2" (?dtor$2@?0??length@?$char_traits@D@std@@SA_KQEBD@Z@4HA) 中導入

warning LNK4217:

本地定義的符號 _CxxThrowException 在函數 "public: void __cdecl std::ios_base::clear(int,bool)" (?clear@ios_base@std@@QEAAXH_N@Z) 中導入

方法一:

可以在編譯時使用下面的參數來解決此類警告
-Xclang -flto-visibility-public-std
例如:
clang++ -Xclang -flto-visibility-public-std main.cpp

方法二:

clang-cl
例如
clang-cl main.cpp -o run.exe

在windows上推薦方法二,詳細原因參見
http://clang.llvm.org/docs/UsersManual.html#clang-cl

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章