2016-12-07 4 views
0

Я использую среду IDE NetBeans для создания простого приложения. Когда я пытаюсь запустить его за пределами NetBeans, он выдает сообщение об ошибке cygwin1.dll. Как я могу сделать приложение автономным? Мне уже пришлось добавить несколько флагов в компоновщик (-static-libstdC++ -static-libgcc), и это отняло две другие ошибки зависимостей, которые я получал. Есть ли другой флаг, который я могу использовать, чтобы отвлечь его? Как вы находите такие знания самостоятельно?Не удается запустить, потому что отсутствует cygwin1.dll ... Цель не зависит от

ответ

1

Как я могу сделать приложение автономным?

Если вы создаете программу Cygwin, вам понадобится dll Cygwin. Cygwin - это не просто библиотека реализации компилятора, it's an attempt to bring a POSIX environment для Windows.

Я не знаю, как статически связывать библиотеки Cygwin. Apparently the folk maintaining Cygwin don't know one either.

Один вариант, если вам не нужна поддержка POSIX, is MinGW-w64.

Как вы узнали о них сами?

В этом случае я уже знал, но я ударил «статически ссылку cygwin1.dll» в Google, чтобы найти авторитетную ссылку.

+0

Может ли MingW быть лучшей идеей? – ThatDude

+0

Зависит от того, что вам нужно. Если вы портируете программу * nix, вам может понадобиться поддержка POSIX. Если нет, Mingw, вероятно, правильный путь. Попробуйте и получите более поздний выпуск Mingw. Стандартный релиз остановился на C++ 11. Не уверен, какой аромат крутые дети рекомендуют прямо сейчас. У меня был успех с mingw-w64. – user4581301