我试图运行一个非常简单的代码,但它报告错误,谁能给一些建议吗?我正在使用Ubuntu14和gcc4.9。
xin@ubuntu:~/pipes$ gcc -arch i386 -arch x86_64 channel.cpp
gcc: error: i386: No such file or directory
gcc: error: x86_64: No such file or directory
gcc: error: unrecognized command line option ‘-arch’
gcc: error: unrecognized command line option ‘-arch’发布于 2016-05-17 17:13:15
看起来,您正在尝试使用Apple /X(达尔文) GCC/CLang方法将代码编译成具有2种体系结构的通用二进制文件。
它在Linux上是不同的(包括Ubuntu)。Linux对单个可执行文件中的多个目标没有通用的二进制支持。它是每个构建的一个体系结构。如果您的目标是32位二进制文件,则删除-arch i386 -arch x86_64并用-m32替换它,如果目标是64位二进制文件,则使用-m64替换它。
32位:
gcc -m32 channel.cpp 64位
gcc -m64 channel.cpp特殊考虑
您还可能需要安装GCC的Multilib版本(如果愿意的话还可以安装G++ ),这样您就可以使用适当的C库在64位Ubuntu上正确地构建和运行32位应用程序。这可以通过以下命令行完成:
sudo apt-get install gcc-multilib g++-multilib在其他非基于Ubuntu的系统上,您需要使用:
apt-get install gcc-multilib g++-multilibhttps://stackoverflow.com/questions/37281891
复制相似问题