2014-10-28 9 views
0

우리는 원래 x86/x64 데비안 기반 시스템에서 실행되도록 설계된 ARM 솔루션을 포팅하고 있습니다.ARMv6에서 x86 프린터 드라이버 바이너리 실행

그러나이 솔루션과 함께 사용하면 호환성이 뛰어나고 Linux 용 드라이버 (x86 및 x64)가 제공되므로 불행히도 제조업체는 ARM 드라이버가 없으며 일부는 컴파일 할 수도 없습니다 소스 코드에서 (이유를 모르겠다.)

저는 CUPS와 함께 프린터를 설치했고 x86 바이너리를 사용했습니다. 내가 프린터에 작업을 보낼 때마다 그러나 물론,는 ARM 시스템은 자연적으로 바이너리와 CUPS 보고서를 사용할 수 없습니다

는/usr/lib 디렉토리/컵/필터/rastertotg2460 실패 나는 것

ARM v6 기반 시스템에서 x86 바이너리를 어떻게 실행할 수 있는지 알고 싶습니까?

ARM 운영 체제는 Raspbian Rbbian Pi B + 보드에서 실행되며 이진 파일 (보기를 원한다면)은 here입니다.

편집 :

나는 또한 ARM 시스템에서의 x86 바이너리를 실행하는 것을 가능하게 주장 this 독점 솔루션의 인식되었다, 그러나가 작동하는지 모든 시위, ARM v7의 시스템에 대해 확실하지 않은 Raspbian과 Raspberry Pi B + 보드.

+0

도움이 될지 확실하지 않지만 QEMU를 사용하면 다른 아키텍처의 실행 파일을 실행할 수 있습니다. 나는 X86 HW에서 ARM 바이너리를 실행하기 위해'qemu-arm '을 사용 했으므로 ARM에서 x86 바이너리를 실행하기 위해'qemu-i386'을 사용할 수 있어야한다. 그렇지 않습니까? – rodrigo

+0

이제 알겠습니다. QEMU를 사용하지 않았습니다. 그러나 나는 그것을 조사 할 것이다. –

답변

1

나는 심각한 일이 필요하다고 생각하지만 처음에는 잘못된 길을 택했다.

프린터를 구동하려면 CUPS 시스템의 "내부"에서 x86 에뮬레이션을 수행해야합니다. 독립 실행 형 x86 에뮬레이터로는 충분하지 않습니다. 그 이유는 주변 하드웨어 및 기타 기능을 갖춘 완전한 x86 시스템을 제공하기 위해서입니다. 필요 없어도 프린터를 운전하면됩니다.

CUPS "가상"드라이버에서 일종의 x86 에뮬레이션 라이브러리를 사용하는 것으로 상상해보십시오.이 드라이버는 가지고있는 x86 바이너리를로드 한 다음 에뮬레이터에 공급합니다. 그런 다음 에뮬레이터 내부의 x86 코드에 예상 CUPS 환경을 노출해야합니다.

Soft86과 같은 것이 좋은 시작점 일 수 있습니다.

+0

하지만 CUPS 필터를 실행하는 것이 유일한 문제인 경우, 이는 입력/출력을하는 간단한 프로그램이며 QEMU 래퍼로 에뮬레이트 될 수 있습니다. _ifs_가 많지만 어쩌면 작동 할 수도 있습니다. – rodrigo

+0

@ FábioAntunes D' oh, 나는 혼란스러워하고 잘못된 길을 택했다. 고침, 고마워. – unwind

+0

전에 QEMU를 사용한 적이 없습니다. 어떻게 그것을 통해 x86 바이너리를 실행합니까? –