La réponse est probablement: dépend de la façon dont le fichier ELF a été généré.
Basé sur cet article et cette phrase:
- Une idée fausse commune est que les fichiers ELF sont uniquement destinés aux exécutables ...
- Nous avons déjà vu qu'ils peuvent être utilisés pour des pièces partielles ...
Tous les fichiers ELF ne seront pas exécutés, même si vous disposez d'une configuration appropriée.
Sur la base de cet article , il existe un groupe de fichiers ELF pf appelé FatELF:
- FatELF est un format de fichier qui incorpore plusieurs binaires ELF pour différentes architectures dans un seul fichier
- Expédiez un fichier compatible avec Linux et FreeBSD
Basé sur cette page d'Apple
- La partie BSD du noyau OS X est dérivée principalement de FreeBSD
Ainsi, pour Mac OS X, FatELF est le "début de la réponse".
Et enfin, sur la base de cette page :
Convertisseur de fichier objet
Cet utilitaire peut être utilisé pour convertir des fichiers objets entre les formats COFF / PE, OMF, ELF et Mach-O pour toutes les plates-formes x86 32 bits et 64 bits. Peut modifier les noms de symboles dans les fichiers objets. Peut créer, modifier et convertir des bibliothèques de fonctions sur différentes plates-formes . Peut vider les fichiers objets et les fichiers exécutables. Comprend également un très bon démonteur prenant en charge les jeux d'instructions SSE4, AVX, AVX2, AVX512, FMA3, FMA4, XOP et Knights Corner. Code source inclus (GPL).
Vous avez la possibilité d'activer ce que vous voulez.
PS: il y a une autre page sur XBinary , je ne l'ai pas analysée.
Ce document présente XBinary, un nouveau logiciel qui vous permet d'ajouter une prise en charge au niveau du noyau pour l'exécution de fichiers dans des formats binaires arbitraires sur Mac OS X