Я хотел бы запустить небольшое приложение (TrunkDecrypt) на моем компьютере с Linux. К сожалению, приложение скомпилировано для Mac OS X, но я использую только Linux. Я где-то читал, что qemu поддерживает выполнение кода, скомпилированного для разных архитектур, но кажется, что qemu работает только как "виртуальная машина", то есть сначала мне нужно установить виртуальную ОС. Мой файл имеет тип "Mach-O 64-битный исполняемый файл", и я хочу просто "передать" его в qemu и сказать, чтобы он выполнялся. Это возможно? Спасибо!

1 ответ1

1

Для запуска исполняемого файла вам нужно больше, чем просто процессор, на котором он работает. Вам также понадобится: 1) загрузчик, чтобы перенести его в память и выполнить любые необходимые исправления страниц; 2) соответствующие динамические библиотеки, чтобы он мог найти функции, которые он использует; и 3) соответствующий ABI, чтобы иметь место связывание с динамическими библиотеками. QEmu не предоставляет их самостоятельно. Но как только вы их получите, QEmu будет рад запустить исполняемый файл для вас.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .