如何交叉编译ARM的Expect

如何交叉编译ARM的Expect,arm,embedded,expect,configure,Arm,Embedded,Expect,Configure,交叉编译如何期望ARM 在Ubuntu主机上从源代码构建它绝对没有问题。但是,如果您尝试交叉编译,configure脚本会不断出现以下错误: checking if WNOHANG requires _POSIX_SOURCE... configure: error: Expect can't be cross compiled 这里似乎有人发现了如何做到这一点(但他没有详细说明): 我还从这里获取了源代码和修补程序: 但即使成功应用了修补程序,也会收到相同的错误 我非常感谢您的帮

交叉编译如何期望ARM

在Ubuntu主机上从源代码构建它绝对没有问题。但是,如果您尝试交叉编译,configure脚本会不断出现以下错误:

checking if WNOHANG requires _POSIX_SOURCE... configure: error: Expect can't be cross compiled
这里似乎有人发现了如何做到这一点(但他没有详细说明):

我还从这里获取了源代码和修补程序:

但即使成功应用了修补程序,也会收到相同的错误


我非常感谢您的帮助。

这些补丁程序所做的是按照您提供的第一个链接中的解释方法:在
configure.in
中查找所有
AC\u MSG\u错误([预期无法交叉编译])
行,并用编码“正确”答案的硬编码行替换它们

所以,首先要做的是:如果应用补丁后仍然出现错误,那么补丁肯定错过了一个错误;你应该找到它,并把它修好

另一个需要检查的问题是“是否已插入”——在修补
configure.in
文件后,您是否运行了相关的自动工具来正确地重新生成
configure
文件?看起来这些修补程序仅用于修补
配置。在
中,因此,如果您没有执行重新生成,则不会更改实际运行的任何内容


一旦您克服了直接错误,还有一点是您找到的修补程序适用于TimeSys Linux(根据名称),它可能与您的系统匹配,也可能与您的系统不匹配——特别是,甚至可能不适用于ARM系统。(我看到TimeSys现在支持ARM,但我对它们的熟悉是针对PowerPC的。)因为它用硬编码答案取代了自动测试,这些答案很容易出错。我建议检查补丁中更改的各行,以确认他们硬编码的答案实际上是正确的。

您是否能够成功编译它。谢天谢地,事实上没有——我放弃了这些努力,继续使用Qt的sendEvent/postEvent方法。