2014-11-28 2 views
0

Простые программы Windows GUI (например, не используемые POSIX), построенные с помощью gcc/Cygwin, имеют какие-либо дополнительные зависимостей по сравнению с построением чего-то не-POSIX (скажем, VS)? Если я создам «ванильную» программу Windows с Cygwin, любой пользователь Windows сможет ее запустить или потребует дополнительных зависимостей?У Windows GUI-программ, созданных с Cygwin, требуется Cygwin?

ответ

1

Если вы используете vanilla gcc, да им потребуется cywgwin1.dll. Если вы используете mingw-gcc, это не будет, mingw будет производить программу Windows.

Также, что вы имеете в виду «ванильная» программа Windows? Если вы говорите об использовании окон, таких как conio.h, вы не можете его создать.

+1

Ну, cygwin docs заявила, что его целью было включить перенос * nix-программ в Windows (то есть программы Windows, имеющие доступ к API POSIX). Похоже, для этого потребуются дополнительные libs. Моя цель - полная разработка Windows, без необходимости подвергать себя VS, и это звучит так, как MinGW - это путь. – Allen

+0

Я не уверен, почему вы предпочли бы MinGW для компиляторов VS. Вам не нужно использовать графический интерфейс, если вам это не нравится. Обратите внимание, что MinGW использует библиотеку времени выполнения C, встроенную в Windows; строго говоря, использование этой библиотеки сторонним программным обеспечением не поддерживается. (32-разрядная версия работает нормально и, вероятно, продолжит это делать, но не поддерживается. 64-разрядная версия в основном работает нормально и, вероятно, продолжит это делать, хотя я видел, что хотя бы один разработчик столкнулся с проблемой с этим.) –

+0

Наконец-то я смог вернуться к этому и проверить его. Простой «Привет, мир!» (даже не GUI, но), используя только , и cout, кажется, требует libgcc_s_dw2-1.dll. Если я запускаю вывод .exe без присутствующей библиотеки, он жалуется, что не может его найти. Даже если я использую -static-libstdC++, он все еще жалуется, что он не может найти эту .dll, если ее нет. Я пробовал это как с статической привязкой libgcc_s_dw2-1.dll, так и без нее, и она всегда требует ее для запуска. – Allen

Смежные вопросы