A resposta é provavelmente: Depende de como o arquivo ELF foi gerado.
Com base neste artigo , e nesta frase:
- Um equívoco comum é que os arquivos ELF são apenas para executáveis ...
- Já vimos que eles podem ser usados para peças parciais ...
Nem todos os arquivos ELF serão executados, mesmo se você tiver uma configuração adequada.
Com base neste artigo , há um grupo de arquivos ELF pf chamado FatELF:
- FatELF é um formato de arquivo que incorpora vários binários ELF para diferentes arquiteturas em um único arquivo
- Envie um arquivo que funcione no Linux e no FreeBSD
Com base nesta página da Apple
- A porção BSD do kernel do OS X é derivada principalmente do FreeBSD
Assim, para o Mac OS X, o FatELF é o "início da resposta".
E, finalmente, com base nesta página :
Object file converter
This utility can be used for converting object files between COFF/PE, OMF, ELF and Mach-O formats for all 32-bit and 64-bit x86 platforms. Can modify symbol names in object files. Can build, modify and convert function libraries across platforms. Can dump object files and executable files. Also includes a very good disassembler supporting the SSE4, AVX, AVX2, AVX512, FMA3, FMA4, XOP and Knights Corner instruction sets. Source code included (GPL).
Você tem a chance de ativar o que quiser.
PS: existe outra página sobre o XBinary , eu não a analisei.
This document discusses XBinary, a new software that lets you add kernel-level support for executing files in arbitrary binary formats on Mac OS X