首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >交叉编译libSDL

交叉编译libSDL
EN

Stack Overflow用户
提问于 2013-12-20 00:24:17
回答 1查看 186关注 0票数 1

我正在尝试交叉编译libSDL版本1.2,用于定制的、基于debian的Linux系统。我使用的工具链已经被正确配置,这样我就可以在我想要的代码上运行gcc/g++,并且结果输出与目标机器兼容。

当我在./configure --help源目录中运行libSDL时,我看到基本上可以设置一些环境变量来指向我的交叉编译器。

然而,我也看到以下选择:

代码语言:javascript
复制
System types:
  --build=BUILD     configure for building on BUILD [guessed]
  --host=HOST       cross-compile to build programs to run on HOST [BUILD]

我查看了configure.inbuild-scripts/config.subbuild-scripts/config.guess文件,但不知道它是如何工作的。

是否需要这些选择?如果没有,那么使用它们是个好主意吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-12-20 13:42:46

使用自动工具,--build是您正在构建的,而--host是您希望它运行的东西(也有--target,但只有在编译本身是编译器的情况下,这才是重要的)。自动工具通常会自己计算出--build,所以如果不必指定它,就不要指定它(但是在/usr/lib/gcc中查看编译器可能认为--build应该是什么)。

所以,如果你是为i686 on x86_64而建的,那么就做

代码语言:javascript
复制
./configure --host=i686-linux-gnu 

(在CFLAGS中使用-m32选项等等,但听起来你已经准备好了。)

然而,如果您正在为x86_64在i686上构建,请执行

代码语言:javascript
复制
./configure --host=x86_64-linux-gnu

(您可以为各种疯狂的主机构建: of 6000-ibm-aix,sparc-sun-solaris,mips-idt-ecoff等,假设您安装了适当的gcc交叉编译器.)

GNU的页面在这里:

002dCompilation.html

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20708365

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档