Для этого нет инструмента Octave. Но я не думаю, что вам это действительно нужно. Как и в случае с другими интерпретируемыми языками, такими как Ruby или Python, типичным способом развертывания приложения на основе Octave является установка среды выполнения Octave (то есть самой Octave) на машине, на которой она будет запущена, а затем развертывание вашу коллекцию M-файлов на машину и пусть она их запускает. Поскольку у вас есть контроль над своими экземплярами EC2, это выполнимо.
(Существуют «замороженные» приложения Python, которые предоставляют полностью упакованные развертываемые приложения со встроенным интерпретатором Python, или компилятор Matlab для Matlab , но нет эквивалента Octave.)
Обратите внимание, что даже для скомпилированных языков может потребоваться установка поддерживающей среды выполнения. Например, для C ++ требуется среда выполнения C ++ (т.е. распространяемый компонент Microsoft Visual C ++ в Windows или библиотеки GNU или CLANG C ++ в Linux), Java требует JRE, а «скомпилированные» приложения Matlab требуют среды выполнения Matlab .
Если вам нужен однофайловый способ переноса приложения на сервер для развертывания, упакуйте приложение в ZIP-файл, скопируйте его на сервер и разархивируйте в месте установки. Или вы можете упаковать его с помощью собственного диспетчера пакетов вашей ОС и объявить зависимость от Octave.
Подход «один большой устанавливаемый пакет» в другом вопросе, на который вы ссылаетесь, предназначен для решения проблемы распространение программ Octave среди нетехнических конечных пользователей на машинах, которые автор программы не контролирует. Предположительно, у вас есть технически подкованные люди в вашем штате, и вы управляете своими облачными виртуальными машинами, на которых собираетесь развертывать, поэтому у вас, вероятно, действительно нет таких же требований.
Вы также можете использовать Docker и соберите ваше приложение + Octave в контейнер Docker для полностью автономного развертывания.