Компиляция bash-скрипта в исполняемый файл Windows - PullRequest
5 голосов
/ 12 августа 2011

У меня есть скрипт, который изначально был сделан для Linux, но адаптирован для запуска с Cygwin в Windows, и если у вас уже есть исполняемые файлы (sh, cp, mv и т. Д.), Вы можете запустить его без Cygwin.Единственная проблема заключается в том, что сценарий также использует несколько сотен (да, сотен) других исполняемых файлов.Можно ли как-нибудь скомпилировать этот скрипт в обычный исполняемый файл и упаковать эти другие вспомогательные файлы в виде ресурсов?

Сценарий имеет длину ~ 1600 строк, что, вероятно, слишком долго, чтобы его можно было легко вручную реализовать в C ++,Я собираюсь скомпилировать сценарий во что-то, что окна могут выполнять без необходимости вносить изменения в путь, чтобы включить кучу сторонних исполняемых файлов.Способ сдержать все это.

Ответы [ 4 ]

2 голосов
/ 12 августа 2011

Я сомневаюсь, что решение, которое вы имеете в виду, выполнимо.

Вместо этого я бы изменил сценарий, чтобы в первую очередь выяснить, где находятся все эти сотни исполняемых файлов.Затем либо установите $PATH соответствующим образом, либо вызовите каждый из них по его полному пути.

Или у вас может быть установщик, который устанавливает исполняемые файлы в указанное или выбранное пользователем расположение, а затем повторно генерирует сценарийвходной файл), чтобы он знал, где находятся исполняемые файлы.Поставляется с the-script.in, затем установщик выполняет текстовые замены для генерации the-script из the-script.in.

1 голос
/ 22 февраля 2012

Я указываю:

об / мин и SHC

как возможное решение вашей проблемы.Может быть, этот инструмент поможет вам сделать работу.

0 голосов
/ 21 января 2014

Используйте порты необходимых утилит и используйте какой-нибудь инструмент виртуализации приложений, чтобы упаковать все это. Cameyo является бесплатным.Забудь о Сигвине, это хууге :))

0 голосов
/ 24 июля 2012

Использование SHC для Cygwin позволяет скомпилировать bash для exe Хорошо. Действительно старый, но я искал это и решил сделать себя и обнародовать это. http://goo.gl/M1NSY

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...