[ c++] cmake 編譯時 undefined reference to `std::cout' 錯誤的解決方案


 

cmake ..  和 make 之后,出現如下錯誤

Linking CXX executable ../../../bin/ModuleTest
CMakeFiles/ModuleTest.dir/tmp.cpp.o: In function `main':
/ModuleTest/tmp.cpp:4: undefined reference to `std::cout'

 

tmp.cpp 內容如下

1 #include <iostream>
2 
3 int main(){
4     std::cout << " seconds since the Epoch\n";
5     return 0;
6 }

 

解決方法:

在 CMakeLists.txt 中添加如下命令,指定 g++ 為編譯器。

SET(CMAKE_CXX_COMPILER /usr/bin/g++)

 

用 gcc 直接編譯會出現同樣的錯誤,用 g++直接編譯則不會。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM