gccm32编译出错
⑴ gcc编译错误
用带-w选项的gcc即可关闭警告,例如:
gcc -w a.c
极不推荐这么做,会让你养成非常不好的编码习惯
*********************************************
程序不完整,GCC是对ANSI C遵循最严格的编译器,这样随意的代码当然无法编译,修改如下:
#include <stdio.h> /*注意这里*/
int main(void) /*注意这里*/
{
int a,b;
for (a=1;a<=100;a++)
{
for (b=2;b<=a;b++)
{
if((a%b)==0)
{
if(a==b)
printf ("%d \n",a);
else
break;
}
}
}
return 0; /*注意这里*/
}
⑵ gcc编译出现错误怎么办
有时候我们编译一个大的项目的时候,会出现很多错误使得屏幕堆满了很多无用的信息。一般情况下我们需要找到首次出现错误的地方,在gcc中添加编译选项可以使编译停止在第一次出现错误的地方:
$ gcc -Wfatal-errors foo.c // GCC 4.0 and later$ g++ -Wfatal-errors foo.cpp
$ g++ -fmax-errors=N foo.cpp // 在出现第 N 此错误的时候停止编译,GCC 4.6 and later
⑶ 在编译的时候出现这个问题在网上找了要在gcc后面加上-m32但还是不行求解答!
加-m32后要保证所有的引用都必须是32位的,并且所有编译过的程序需要清空并重新编译。
⑷ 用mingw32 gcc 一编译就出一大堆错误,应该怎么解决
编译出错,说明代码写的有问题,一点点的根据错误去改。
如果在VC/VS下编译通过,那就是使用了VC/VS的接口。
要改成mingw的接口,或者自己实现。
⑸ 64位linux下面的GCC如何编译出一个32位可执行程序
理论上安装支持环境,之后 64 位的 gcc 编译成 32 位程序,就加 -m32 参数即可。
当然还一个办法是装个 32 位的 gcc 。
另外,交叉编译也适用于 x86 架构。
不过这么编译经常会出现各种问题,所以编译 32 位的程序,最好还是用 32 位系统。
不一定重装,用 chroot 和 setarch 命令配合即可弄出一个 32 位的子系统。
⑹ gcc编译模式出错
系统不兼容,建议在64位系统编译一下,没有更好的办法
⑺ gcc 编译32位应用怎么编译
您好,我来为您解答:
GCC加-m32,输出就是32位的。记得链接的时候要链接32位的库,不要链接到64位的库上去
gcc -m32 src.c -o outputfile
如果我的回答没能帮助您,请继续追问。
⑻ linux64位机器编译32位程序出现错误。
32 和 64 是完全两个不同的系统。Linux 他们的兼容,完全是基于内核的双模式切换功能,但是因为是基于内核的。所以 32 和 64 的系统函数库就还是没关系。
那么,你编译和运行 32 位程序,就需要 64 位的函数库接口支撑。同样 64 位程序,也需要 64 位的函数库提供支撑。
你这个问题,教程只让你装了最基本的编译器环境,但是函数支撑环境全都没有装,肯定是还会提示找不到需要的函数库的。
另外,就算你这个命令装了需要的函数库,也肯定只是装了 64 位的函数库,32 位库也没有装。那么编译 32 位程序也会出现找不到 32 位函数库的问题的。
你这个问题,我建议你学习两部分:
1、Linux 的依赖关系;
2、Linux 的 mutilib 相关实现。
我建议,编译 32 的程序请用纯 32 位系统。64 位系统只编译 64 位的程序。64 位系统只可以运行 32 位程序,不要用来编译。Linux 里面随便找个程序,就会依赖很多的函数库,这对于编译器调用来说,会很乱的。
如果真的没有空闲机器去单独跑 32 位系统了,我建议要么是 chroot 环境,要么是用交叉编译。不过注意这两种方式还是需要设置。
⑼ 用GCC编译器编译出来的程序运行出错,请高手帮忙解决!
#include<iostream>
usingnamespacestd;
intmain(void){
inti,sum=0;
for(i=1;i<=100;i++)
sum+=i;
cout<<sum<<endl;
return0;
}
code本身完全没有问题。我认为是你GCC没有安装或配置好。
⑽ 关于gcc编译出错的问题!
段错误,肯定是非法使用指针。检查你的指针是不是越界了吧。
程序很乱,刚看清楚,b指针指向的字符串是const类型,是不能被修改的,所以你的函数是错误的!