我的所有代码都是在一个有GCC4.1.1和G++4.1.1的系统下编译的。它只是给了我另一个系统,它有gcc4.1.2和g++4.1.2。当我使用-v选项运行时,它会说
ignoring nonexistent directory "/usr/lib/gcc/x86_64-redhat-linux/4.1.2/../../../../include/c++/4.1.2/x86_64-redhat-linux" ignoring nonexistent directory "/usr/lib/gcc/x86_64-redhat-linux/4.1.2/include" ignoring nonexistent directory "/usr/lib/gcc/x86_64-redhat-linux/4.1.2/../../../../x86_64-redhat-linux/include"
不管find给我这个
find /usr -name stddef.h /usr/lib/gcc/i386-redhat-linux/4.1.1/include/stddef.h
如何强制gcc对i386和4.1.1使用不同的搜索路径,而不是4.1.2和x86_64?
这将表明gcc的安装尚未完成。您可能需要安装(例如sudo yum install libstdc++-devel glibc-devel
)。假设gcc
实际上是使用RedHat的标准包安装的,这将会起作用。当然,您可能还需要一些其他库,这取决于您实际开发的内容。
当然,正确的做法是向它抱怨,但我怀疑,如果你今天想要完成一些工作(如果你的IT和我一起工作过的IT一样),你最好自己做,如果你能做到的话。(哦,而且很多时候,以我的经验,他们根本不知道如何解决问题,所以给他们上面的信息吧!)。
对于includes参数,可以使用-i
扩展search,对于libs参数,可以使用-l
扩展search,后跟所需路径。请参阅文档或此答案中的更多信息