%20em%20um%20PE.exe%20(Windows).png)
Sou um novato quando se trata de usar arquivos de código de máquina!!!
Preciso usar um executável de código de máquina obtido como ELF (Linux) em um arquivo exe para Windows. Eu tentei 'objconv', mas, embora o formato sugira o uso de '-fPE', quando eu uso isso, recebo a linha de comando indicando 'Erro 2004 linha de comando desconhecida' e 'Erro 2103 não é possível ler o arquivo de entrada'. Suspeito que haja alguma incompatibilidade entre as plataformas Linus e Windows
Responder1
Embora o código do objeto subjacente possa ser o mesmo entre as plataformas, aplicativos nativos não triviais não podem ser compatíveis com binários entre Windows e Linux.
Se o executável do Linux que você está tentando converter estiver vinculado dinamicamente, será necessária a presença de bibliotecas que não existem no Windows (você pode ver esta lista de bibliotecas executando ldd /path/to/program
na máquina Linux).
Mesmo se você converteu todas as bibliotecas para o formato executável PE ou as vinculou estaticamente, o sistema chama para oNúcleo NTeKernel Linuxsão completamente diferentes. Não há correspondência direta entre eles.
Sua melhor opção seria encontrar o código-fonte do aplicativo original, se possível. Se o programa for escrito de forma portátil, ele poderá ser compilado tanto no Windows quanto no Linux. Mesmo que as chamadas do sistema não sejam as mesmas entre as duas plataformas, um subconjunto de suas implementações de biblioteca C possui comportamento padronizado.
Responder2
É quase certo que isso não vai funcionar. Linux e Windows não funcionam bem um com o outro. O aplicativo que você deseja "converter" terá que ser reconstruído a partir do código-fonte para Windows (o que exigirá patches específicos do Windows). Com alguma sorte, o aplicativo que você está tentando executar já possui uma porta Windows.
Responder3
Talvez você devesse dar uma lida nisso https://github.com/microsoft/ebpf-for-windows/blob/main/docs/NativeCodeGeneration.md