导航:首页 > 源码编译 > gcc编译32位代码

gcc编译32位代码

发布时间:2023-12-26 09:53:58

㈠ 64位UBUNTU 下 如何用GCC 编译出32位程序 求前辈指点

目测是32位的搜索路径下没有sys/cdefs.h
一般64位系统最好不要安装32位库的-dev,经常有冲突,强行安装会破坏64位环境,头文件并不像共享库分得那么完美。
我觉得比较好的做法是,重新把某一个文件夹当成rootfs,在里面安装各种32位的库和库-dev,然后给gcc传递参数"--sysroot=路径"就可以让gcc重新选取那个文件夹为rootfs,而不再认为/为rootfs。其实这样就变成交叉编译了。也可以在这个rootfs中安装32位的必要软件包如bash,gcc,coreutils等等,然后chroot进去就变成host编译了。其实有个比较简单的方法,就是虚拟机下安一个32位的ubuntu,然后装好各种软件包,然后直接对/打包,再拿出来解压就是rootfs了,后面最多就是缺啥安啥,工作量比较小。当然如果你不在意编译速度,直接虚拟机下编最简单

㈡ gcc g++ 使用哪些编译选项可以让编译出来的程序兼容32位和64位

用32位的gcc,编译出来后,能在32位上运行,也能在64位上兼容。

㈢ 64位linux编译32位程序

在64位的Linux下,gcc 编译 32 位程序需要添加参数 -m32 ,ld需要添加参数是 -m elf_i386。
1、Along with the -m32 flag in gcc, you may need to include the -melf_i386 flag for ld to properly link the 32bit object files to the 32bit libraries if you have both the 32bit and 64bit libraries.
2、 ld命令 ld命令是GNU的连接器,将目标文件连接为可执行程序。
3、举例:

gcc -m32 -o hello hello.c

gcc -m32 -c hello.o hello.c
ld -m elf_i386 -o kernel main.o hello.o

㈣ 如何在Linux下用gcc将c语言文件编译成32位exe文件,且可以在Windows下运行

有方法的,不过要看你编绎出的程序需要用到多少windows的库,看看linux下有没有可以替代的,不过很多时候没有windows内核还是无法编译成功的。
方法一:安装mingw32
方法二:virtualbox安装xp的虚拟机
方法三:通过wine使用cl命令行编译
上面几个方法你可以尝试一下。
至于编辑嘛,高手一般直接就用vim,如果你觉得难用的话,可以用eclipse或者kdevelop,kdevelop有点像windows下VS,希望对你有所帮助

㈤ 如何用GCC在linux下编译C语言程序

在Linux下面,如果要编译一个C语言源程序,我们要使用GNU的gcc编译器,假设我们有下面一个非常简单的源程序(hello.c):


int main(int argc,char **argv)


{


printf("Hello Linux ");


}


要编译这个程序,我们只要在命令行下执行:


gcc -o hello hello.c


gcc 编译器就会为我们生成一个hello的可执行文件.执行./hello就可以看到程
序的输出结果了

阅读全文

与gcc编译32位代码相关的资料

热点内容
java获取类包名 浏览:888
ftp命令编码格式 浏览:298
程序员那么可爱陆离穿正装 浏览:169
源码的账号密码在哪个文件 浏览:437
如何在中国农业银行app绑定银行卡 浏览:990
shopnum1多用户商城系统源码 浏览:744
红包广告平台源码 浏览:770
硬盘格式化时用的dos命令是 浏览:940
找人缓解压力 浏览:936
iphone的pdf 浏览:349
90压缩饼干怎么吃 浏览:668
php教材下载 浏览:915
什么解压密码最好 浏览:590
数据库与服务器如何连接 浏览:444
架构师需要阅读的源码 浏览:483
ch编译器 浏览:456
java必须自己写一个编译器吗 浏览:944
如何制作androidrom 浏览:476
单片机万能板怎么写入程序 浏览:27
迈锐宝xl压缩比 浏览:347