Существует ли формат файла, который можно дважды щелкнуть по windows, linux и ma c и запустить тот же машинный код (при условии отсутствия внешних зависимостей)?
Краткий ответ - нет.
Более длинный ответ заключается в том, что вы смешиваете понятия и уровни абстракций: двойной щелчок не является понятием уровня ОС, и никакая ОС не запускается двоичный файл в ответ на двойной щелчок.
Все они запускают двоичный файл в ответ на execve
или CreateProcess
системный вызов , и не существует универсального формата файла, который будет приемлемо для ОС на всех Linux, Ma c OS и Windows.
как единичные "windows, ma c и linux автономные" сборка игры
Точно так же файл Python foo.py
работает на всех платформах: существует нативный двоичный файл, который интерпретирует код содержится в игре. Собственный двоичный файл имеет разные форматы файлов на каждой платформе (ELF
на Linux, Mach-O
на Ma c, PE
на Windows).