2014-10-28 26 views
0

我们正在移植最初设计用于在基于x86/x64 Debian的系统上运行的ARM解决方案。在ARMv6上运行x86打印机驱动程序二进制文件

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

我用CUPS安装了打印机并使用了x86二进制文件。但当然,每当我发送任务到打印机,ARM的系统不能使用二进制和自然CUPS报告:

/usr/lib中/杯/过滤/ rastertotg2460失败

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

ARM操作系统是在Raspberry Pi B +板上运行的Raspbian,并且二进制文件(如果您想要查看)是here

编辑:

我也意识到的主张,以使其能够运行在ARM系统x86二进制this专有的解决方案,但所有的示威是ARM V7系统,不知道这是否会工作在带Raspberry Pi B +板的Raspbian。

+0

我不确定它是否有帮助,但QEMU可以为不同的体系结构运行可执行文件。我使用'qemu-arm'在X86 HW中运行ARM二进制文件,所以应该可以使用'qemu-i386'在ARM中运行x86二进制文件,不是吗? – rodrigo 2014-10-28 13:58:22

+0

我现在知道了。没有使用QEMU。但我会研究它。 – 2014-10-28 13:59:22

回答

1

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

由于您要驱动打印机,因此您将不得不在CUPS系统的“内部”执行x86仿真。单独使用x86模拟器是不够的,因为这些模拟器旨在为您提供一个完整的x86系统及外围硬件和东西。你不需要那个,你只需要驱动打印机。

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

类似Soft86可能是一个很好的起点。

+0

但是,如果唯一的问题是运行CUPS过滤器,那是一个简单的程序,它可以输入/输出,并且可以用QEMU包装器来模拟。很多_ifs_,但也许它工作。 – rodrigo 2014-10-28 14:07:43

+0

@FábioAntunesD'oh,我感到困惑,并有错误的方式。修正了,谢谢。 – unwind 2014-10-28 15:11:45

+0

我以前从未使用过QEMU。如何通过它运行x86二进制文件? – 2014-10-28 16:07:52

相关问题