gpt4 book ai didi

使用 GCC 交叉编译 C 应用程序

转载 作者:太空宇宙 更新时间:2023-11-04 01:13:15 27 4
gpt4 key购买 nike

我想为 i386 架构构建一个应用程序,但目前我正在运行 x86_64 操作系统,我用来链接以生成应用程序二进制文件的共享库是为 i386 架构构建的。如果我在我使用的共享库上运行文件命令,我会得到以下输出

ELF 32-bit LSB shared object, Intel 80386, version 1 (S│Size: 13064788 SV), dynamically linked, not stripped 

但是 gcc 跳过了这个共享库,说它是不兼容的。所以我只是想知道是否有任何选项可以让 GCC 为 i386 架构而不是为我的 native 架构编译?

是的,我已经在这个论坛上解决了很多交叉编译问题,但由于我是交叉编译方面的新手,所以我没有完全理解基础知识。交叉编译是否需要我有一个 gcc,它是为与我要编译的体系结构相同的体系结构构建的?交叉编译是否必须使用像 binutils 这样的工具链?

我使用的是一个简单的手写 make 文件,没有使用任何工具特定的工具链。

提前致谢

最佳答案

实际上,您只需在 gcc 构建命令中指定“-m32”即可。试一试:)

如果出现链接错误,请尝试安装 32 位 C 运行时库;然后重试您的“gcc -m32”构建:

sudo apt-get install ia32-libs

关于使用 GCC 交叉编译 C 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7219256/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com