C++ 我怎么知道“我怎么知道”呢;默认包括目录"&引用;“默认链接目录”;及;“默认链接库”;海湾合作委员会,g++/c++;在Ubuntu 11.04中?

C++ 我怎么知道“我怎么知道”呢;默认包括目录"&引用;“默认链接目录”;及;“默认链接库”;海湾合作委员会,g++/c++;在Ubuntu 11.04中?,c++,gcc,C++,Gcc,对于以下3种编译情况: gcc -o helloc hello.c (1) g++ -o hellocpp hello.cpp (2) c++ -o hellocpp hello.cpp (3) 如何知道每种情况下的“默认包含目录”、“默认链接目录”和“默认链接库”?我在32位Ubuntu 11.04环境中使用GCC4.5.2 对于案例(1),gcc使用的是标准C库还是GNUC库?这两个C库之

对于以下3种编译情况:

gcc -o helloc hello.c                    (1)

g++ -o hellocpp hello.cpp                (2)

c++ -o hellocpp hello.cpp                (3)
如何知道每种情况下的“默认包含目录”、“默认链接目录”和“默认链接库”?我在32位Ubuntu 11.04环境中使用GCC4.5.2

对于案例(1),gcc使用的是标准C库还是GNUC库?这两个C库之间有区别吗

比较案例(2)和案例(3),编译器使用的“默认链接库”有什么不同吗?他们使用标准的C++库还是GNU C++库?两个C++库之间的区别是什么?

提前谢谢你的建议


Lawrence Tsang

gcc-v
,或
g++-v
,打印有关环境的详细信息

例如,对我来说,这表示:

#include <...> search starts here:
 /usr/local/lib/gcc/i686-pc-linux-gnu/4.6.2/../../../../include/c++/4.6.2
 /usr/local/lib/gcc/i686-pc-linux-gnu/4.6.2/../../../../include/c++/4.6.2/i686-pc-linux-gnu
 /usr/local/lib/gcc/i686-pc-linux-gnu/4.6.2/../../../../include/c++/4.6.2/backward
 /usr/local/lib/gcc/i686-pc-linux-gnu/4.6.2/include
 /usr/local/include
 /usr/local/lib/gcc/i686-pc-linux-gnu/4.6.2/include-fixed
 /usr/include
#包含搜索从这里开始:
/usr/local/lib/gcc/i686 pc-linux-gnu/4.6.2/../../../../../../../../../include/c++/4.6.2
/usr/local/lib/gcc/i686 pc-linux-gnu/4.6.2/../../../../../../../../include/c++/4.6.2/i686-pc-linux-gnu
/usr/local/lib/gcc/i686 pc linux gnu/4.6.2/../../../../../../../include/c++/4.6.2/backward
/usr/local/lib/gcc/i686 pc linux gnu/4.6.2/include
/usr/本地/包括
/usr/local/lib/gcc/i686 pc linux gnu/4.6.2/include-fixed
/usr/包括

另外,请尝试
gcc-dumpspecs
查看工具链中调用的工具的详细信息。

Kerrek SB的答案在Ubuntu 12.04上对我不太适用,但这似乎是可行的:

cpp-v

在底部,我得到了以下信息:

#include "..." search starts here:
#include <...> search starts here:
/usr/lib/gcc/x86_64-linux-gnu/4.6.1/include
/usr/local/include
/usr/lib/gcc/x86_64-linux-gnu/4.6.1/include-fixed
/usr/include/x86_64-linux-gnu
/usr/include
End of search list.
#包括“…”搜索从这里开始:
#包括搜索从这里开始:
/usr/lib/gcc/x86_64-linux-gnu/4.6.1/include
/usr/本地/包括
/usr/lib/gcc/x86_64-linux-gnu/4.6.1/include-fixed
/usr/include/x86_64-linux-gnu
/usr/包括
搜索列表结束。

include headers path | | libraries path这需要一个文件来编译。所以仅仅运行
g++-v
是行不通的。它必须是
g++-vsomefile.cpp
,作为一个函数,您可以尝试
echo | gcc-E-Wp,-v-