对于以下3种编译情况:
gcc -o helloc hello.c (1)
g++ -o hellocpp hello.cpp (2)
c++ -o hellocpp hello.cpp (3)
我如何知道每种情况下的“默认包含目录”、“默认链接目录”和“默认链接库”?我在32位Ubuntu 11.04环境中使用gcc 4.5.2。
对于案例(1),gcc使用的是标准C库还是GNU C库?这两个C库有什么区别吗?
比较情况(2)和(3),编译器使用的“默认链接库”有什么不同吗?他们使用的是标准C库还是GNU C库?这两个C++库有什么区别?
提前感谢您的任何建议。
曾浩辉
3条答案
按热度按时间hmae6n7t1#
例如
gcc -v
或g++ -v
,以打印出有关环境的详细信息。例如,对我来说,这句话是:
还可以尝试
gcc -dumpspecs
查看工具链中被调用工具的详细信息。t98cgbkg2#
Kerrek SB的答案在Ubuntu 12.04上对我不太起作用,但这似乎起作用:
cpp -v
在底部,我得到了这个:
nkhmeac63#
作为另一种选择,您可以使用以下命令:
由于gcc的消息被打印为stderr,您可以将其重定向到stdin以进行进一步处理(例如
sed
,grep
,awk
,...)