在ARMv6上运行x86打印机驱动程序二进制文件

时间:2014-10-28 13:49:38

标签: linux x86 intel armv6

我们正在移植一个最初设计为在基于Debian的x86 / x64系统上运行的ARM解决方案。

到目前为止,这个解决方案很好,我们推出了兼容的打印机,并附带了Linux驱动程序(x86和x64),不幸的是制造商没有ARM驱动程序,也没有能够编译一些源代码(不知道为什么)。

我已经用CUPS安装了打印机并使用了x86二进制文件。但当然,每当我向打印机发送任务时,ARM系统都无法使用二进制文件和自然的CUPS报告:

  

/ usr / lib / cups / filter / rastertotg2460失败

我想知道如何在基于ARM v6的系统上运行x86二进制文件?

ARM操作系统是在Raspberry Pi B +板上运行的Raspbian,而二进制文件(如果你想看一下)是here

修改

我也了解this专有解决方案,声称可以在ARM系统上运行x86二进制文件,但所有演示都适用于ARM v7系统,不确定它是否适用于Raspberry Pi的Raspbian B +板。

1 个答案:

答案 0 :(得分:1)

我认为这需要一些认真的工作,但我最初做错了。

由于您想要驱动打印机,您将不得不进行x86仿真"内部" CUPS系统。对于独立的x86仿真器来说,这还不够,因为那些旨在为您提供带有外围硬件和内容的完整x86系统。你不需要它,你只需要驱动打印机。

我可以想象在CUPS中使用某种x86仿真库"虚拟"驱动程序,它反过来加载您拥有的x86二进制文件并将其提供给模拟器。然后,它需要将预期的CUPS环境暴露给模拟器内的x86代码。

Soft86之类的东西可能是一个很好的起点。