Como instalar um arquivo binário da Intel no ARM?

1

Estou tentando instalar um arquivo binário e recebo a saída como " Cannot install binary ".

Quando eu fiz file .bin , a saída é:

c64plus-imglib_2_02_00_00_Linux-x86_Setup.bin: ELF 32-bit LSB executable, Intel 80386, version 1 (GNU/Linux), statically linked, stripped

Na minha máquina ARM

uname -a:

retorna

Linux overo 3.5.7 #1 PREEMPT Thu Jan 9 16:37:38 CET 2014 armv7l GNU/Linux

Existe um método para instalar um binário Intel em um processador ARM?

    
por Zafrullah Syed 12.03.2014 / 13:21

1 resposta

3

Você não pode.

Um programa em formato binário só pode ser executado em uma máquina com um ISA compatível (Instruction Set Architecture, consulte artigo da Wikipedia ). A Intel mantém a compatibilidade com versões anteriores do ISA em cada geração de processador, já que um ISA mais novo é sempre um superconjunto do antigo ISA, e um programa criado para o i386 será executado no Pentium. No entanto, este não é o caso entre ISAs radicalmente diferentes, como o x86-64 e o ARM.

Além disso, seu instalador pode estar no ISA x86-64, mas a biblioteca que você está tentando instalar é compilada no TI 'C64x ISA, uma arquitetura moderna da Texas Instruments usada em seus DSPs de ponta. Então, mesmo que você use um PC Intel para instalar as bibliotecas, você não pode copiá-las para sua placa ARM e usá-las, uma vez que elas são feitas para a arquitetura TI.

Para piorar as coisas, mesmo se você tivesse as fontes dessa biblioteca, seria inútil para você, já que elas provavelmente seriam altamente otimizadas para essa arquitetura, usando chamadas inline para o código assembly para aproveitar as instruções especiais e recursos de hardware exóticos que somente esses DSPs podem ter.

Você pode tentar ver se uma biblioteca de imagens de código aberto e livre tem o código que você está procurando. Comece com ImageMagick , mas você é avisado de que essas grandes e complexas bibliotecas podem ser um pouco difíceis de entender.

    
por 12.03.2014 / 14:40