brrq.net
当前位置:首页 >> 如何在64位linux强制编译32位应用程序 >>

如何在64位linux强制编译32位应用程序

编译64位程序,不一定要编译机器是64位的,但是32位机器默认安装的gcc编译环境还是不能用来编译64位程序。编译64位程序,需要加上-m64编译器参数,默认安装的gcc已经支持该参数,但是缺少64位机器指令相关的文件,所以不能编译,会出现下面的错...

理论上安装支持环境,之后 64 位的 gcc 编译成 32 位程序,就加 -m32 参数即可。 当然还一个办法是装个 32 位的 gcc 。 另外,交叉编译也适用于 x86 架构。 不过这么编译经常会出现各种问题,所以编译 32 位的程序,最好还是用 32 位系统。 不一定重...

大部分Linux发行套件都有针对x86_64处理器的版本。比较典型的x86_64的处理器有ADM Athlon II和英特尔Xeon。因为这些Linux发行套件都有自己专用的软件源,这些软件源会为提供所有它所支持的应用软件的二进制包。如果你满足于Linux的安装方式,你...

安装gcc 安装gcc-multlib 编译的时候加参数 -m32 其他依赖库可以安装。 此外可以使用容器技术,chroot技术,交叉编译。 使用虚拟机也是可以的,有性能损失,可能会引入一些错误。

在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 l...

64位可以编32位的程序出来,在各种FLAGS中增加 -m32 编出来的就是32位程序,连接时自然是找32位的共享库 这个要看发行版对32位支持的实现,比如gentoo下如果开abi支持双架构那很可能悲剧,因为有些包还没跟上,如果用binary的32位库又会因为版本...

src.rpm 用 --target=i686 就行了。rpmbuild 会自己调用对应的编译器和参数(前提是你的 rpm 内部设置都正确)。其实这里编译器的问题不大,主要是开发环境必须全。 但环境的问题在于,编译 32 和 64 是需要两套环境的。虽然 Linux 系统可以 32...

安装gcc 安装gcc-multlib 编译的时候加参数 -m32 其他依赖库可以安装。 此外可以使用容器技术,chroot技术,交叉编译。 使用虚拟机也是可以的,有性能损失,可能会引入一些错误。

可以的。 编译64位程序,不一定要编译机器是64位的,但是32位机器默认安装的gcc编译环境还是不能用来编译64位程序。 编译64位程序,需要加上-m64编译器参数,默认安装的gcc已经支持该参数,但是缺少64位机器指令相关的文件,所以不能编译,会出...

以Ubuntu为例说明 一、安装安装lxc 1、安装lxc sudo apt-get install lxc lxc-templates 2、现在创建一个32位的容器,并把目录绑定到容器: sudo lxc-create -t ubuntu -n my32bitbox -- --bindhome $LOGNAME -a i386 3、然后启动容器;在控制台...

网站首页 | 网站地图
All rights reserved Powered by www.brrq.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com