Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/149.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/27.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ -m32选项没有';不与gcc合作,但与g+合作+;_C++_Linux_Compilation - Fatal编程技术网

C++ -m32选项没有';不与gcc合作,但与g+合作+;

C++ -m32选项没有';不与gcc合作,但与g+合作+;,c++,linux,compilation,C++,Linux,Compilation,我试图在x86_64 ubuntu 12.04机器上为32位目标编译一个应用程序。 我使用 sudo apt-get install gcc-multilib g++-multilib libc6-i386 libc6-dev-i386 第一个命令用于生成32位版本。但是,第二个命令出错 1. g++ -m32 hello.c 2. gcc -m32 hello.c skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/4.8/libgcc

我试图在x86_64 ubuntu 12.04机器上为32位目标编译一个应用程序。 我使用

sudo apt-get install gcc-multilib g++-multilib libc6-i386 libc6-dev-i386
第一个命令用于生成32位版本。但是,第二个命令出错

1. g++ -m32 hello.c 

2. gcc -m32 hello.c
skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/4.8/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/4.8/libgcc_s.so when searching for -lgcc_s
/usr/bin/ld: cannot find -lgcc_s
有谁能向我解释一下为什么gcc不起作用。我是不是错过了一些图书馆

谢谢




我想你需要这个Ubuntu软件包:

sudo apt-get install ia32-libs

还要确认您正在将
gcc多库
gcc-v
一起使用。如果没有相应地设置路径或重新安装
gcc multilib

我将我的g++升级到4.8,g++-m32也停止工作。安装g++-4.8-multilib make-m32选项可与gcc和g++一起使用。

我确实安装了它。抱歉之前没有提及。@SArora,你能试试:gcc-m32-L/usr/lib32-o hello.cYeah吗。我以前试过。它不起作用。我在/usr/lib32中有crt1.o和libgcc_.so.1。我想知道它是否在寻找其他东西。我想你有$PATH问题,你没有使用gcc多库,你能验证gcc-v吗?根据gcc multilib二进制文件设置路径。安装g++-4.8-multilib帮助我解决了这个问题。谢谢