如何交叉编译期待ARM(How to cross compile Expect for ARM)

2019-09-24 04:56发布

一个人如何交叉编译期待ARM?

这绝对是从一个主机Ubuntu的机器上源代码编译没有问题。 但是,如果你尝试交叉编译它,配置脚本不断提供了以下错误:

checking if WNOHANG requires _POSIX_SOURCE... configure: error: Expect can't be cross compiled

好像有别人谁发现了如何做到这一点在这里(但他没有详细说明):

  • https://linuxlink.timesys.com/cross_compiling_expect

我还拿了源和补丁从这里:

  • http://repository.timesys.com/buildsources/e/expect/expect-5.43.0/

但收到了同样的错误,即使成功地应用补丁!

我真的很欣赏这里一些帮助。

Answer 1:

什么这些补丁正在做的是以下从您提供的第一个链接的解释的方法:找到所有的AC_MSG_ERROR([Expect can't be cross compiled])中的行configure.in ,并用硬编码的线替换它们编码的“正确”答案。

因此,有做的第一件事:如果你还在应用修补程序后收到这个错误讯息,那么,该补丁必须错过​​了一个; 你会发现它和解决它。

检查另一件事是沿着“是它插入”的台词-你办好相关自动工具正确重新生成configure文件修补后configure.in文件? 它看起来像这些补丁只打补丁configure.in ,所以如果你没有做你的再生也不会发生变化实际运行任何东西。

一旦你过去的即时错误,另外还有一点,你找到了修补程序都是TimeSys公司的Linux(按名称),这可能会或可能不会匹配您的系统 - 和,尤其是,甚至不为ARM系统。 (我看到,现在TimeSys的支持ARM,但我与他们的熟悉程度为PowerPC),因为它是用硬编码的答案更换自动测试,这些问题的答案很容易被错误的。 我建议你检查各种线路中的补丁改变,以确认他们的答案硬编码实际上是正确的。



文章来源: How to cross compile Expect for ARM