Независимый от платформы код для C / C ++ / Java без дополнительного пакета

Можно ли сделать серверный / клиентский код на C / C ++ / Java, который может быть независимым от платформы?

Он не должен требовать установки какого-либо дополнительного пакета (например, требования JVM) в системе, а только для запуска исполняемого файла (если это возможно в Windows / Linux / Mac).

Если нет, не могли бы вы сказать мне другой способ (может быть, язык), чтобы добиться этого?
Благодарю вас

1

Решение

просто исполняемый файл для запуска (если это возможно в Windows / Linux / Mac).

Это можно сделать с помощью Qt C ++, написав переносимый код и используя статические ссылки для связывания библиотек DLL. Недостатком этого является то, что вы получите гораздо больший исполняемый файл. Java использует JVM, которая исключает это, как вы заявили.

Следует отметить, что платформа, для которой вы его компилируете, будет единственной целью, на которой работает исполняемый файл. Таким образом, программа, скомпилированная в Windows, не будет работать в Ubuntu (для этого вам нужно будет скомпилировать отдельную версию — если, возможно, вы не установите .exe в Wine).

2

Другие решения

Простой ответ: НЕТ! (Как отмечено: если вы не хотите компилировать для каждой платформы независимо)

Либо вам нужен код, ориентированный на платформу, либо промежуточное программное обеспечение, такое как JVM с Java Bytecode или .NET Framework с MSIL (Microsoft Intermediate Language).
Я полагаю, что node.js можно рассматривать как промежуточное ПО.

Поскольку .NET Framework недоступен в linux / mac, я предлагаю использовать Java.

Если вы используете статическое связывание в C ++ и Qt или что-то вроде добавления промежуточного программного обеспечения в ваш двоичный файл. Тем не менее, я предлагаю использовать существующее и широко распространенное промежуточное программное обеспечение: Java.

1

По вопросам рекламы [email protected]