问:为什么在使用gcc hello.cpp
会报错显示undefined reference to `std::cout’呢?是不是只有g++才能编译C++呀?
答:其实不管是gcc
还是g++
都支持编译c++的,只是因为gcc不会自己链接c++库,需要我们手动连接,如下为用g++来成功生成可执行文件的方法.
方法:
1. 首先用命令gcc -c hello.cpp
只编译和汇编源文件而不链接,成功生成编译后的目标hello.o
后缀文件。
2. 之后再通过链接命令gcc hello.o -o hello -lstdc++
链接C++库,这样就生成了hello.exe
的可执行文件(-lstdc++
代表链接C++库,而-lc
代表默认情况下时链接的C库)。
评论(0)
暂无评论