我正在做一个嵌入式项目,该项目目前在Linux和uClibc中使用C。我们有兴趣将其转移到C++,但我不希望在libstdc++中与链接相关的开销。我的印象是,如果我们不使用STL中的任何东西,比如iostream或vector,这是可能的。
如何在不链接到libstdc++的情况下直接编译g++?
发布于 2009-10-31 09:13:37
编译时,请仅使用g++ -c编译。然后,对于链接,使用ld而不是g++。这将直接调用链接器,这要求您在命令行上命名所有库(包括libc和libcrt)。
或者,如果您使用libc作为“更好的c语言”,那么您也可以使用gcc进行最后的链接步骤(它将自动包含g++ )。
发布于 2009-10-31 09:19:17
你可以使用
g++ -nodefaultlibs -fno-exceptions a.cc但您不能以这种方式使用所有c++功能...
发布于 2015-12-17 04:39:32
为了完整性和正确性:
g++ -c -fno-exceptions a.cpp
gcc a.o -o ahttps://stackoverflow.com/questions/1653047
复制相似问题