Qbik-club
Дата публикации:Автор:Теги:

Как скомпилировать Windows программу?

Друзья, не секрет, что многие разработчики предпочитают использовать Linux дистрибутивы в качестве основной рабочей станции. Но что делать, если необходимую программу нужно скомпилировать для Windows? На самом деле это совсем не проблема и сегодня я расскажу, как без проблем решить эту проблему.

Как скомпилировать Windows программу?

И так, начнём с того, что обычно для компиляции С или С++ программ используются g++ или gcc компилятор.

  • gcc — компилятор для языка С;
  • g++ — компилятор для языка С++;

Если же Вы используете дистрибутив Linux, то данные компиляторы смогут  скомпилировать программу, которая будет работать в другом Linux дистрибутиве (совместимость мы сегодня не рассматриваем), но что делать, если нужно передать программу другу с ОС windows? В этом нам поможет MinGW.

Давайте его установим:

apt install gcc-mingw-w64-x86-64 g++-mingw-w64-x86-64 wine64

 Всё готово! Теперь можем скомпилировать свою программу в том числе и под windows. Запустить можно следующей командой:

x86_64-w64-mingw32-gcc file.cpp -o program.exe

Разумеется, file.cpp вам нужно заменить на имя своего файла с исходным кодом, а program.exe — на имя файла программы, который желаете получить в результате.

Однако обратите внимание! При таком варианте компиляции может получиться ситуация, что на компьютере может не быть каких либо библиотек. К примеру после того, как я передал программу другу, у его «вылетела» такая ошибка:

Ошибка запуска после компиляции без поллюченной библиотеки

На самом деле проблема решается довольно просто. Можно просто на компьютер, на котором запускается программа, установить необходимые библиотеки (разумеется, такой вариант опускаем) или же добавить их в свою программу. Последнее делается добавлением ключа -static в конце. Т.е. получается такая команда:

x86_64-w64-mingw32-gcc file.cpp -o program.exe -static

 Правда вариант с добавлением библиотек в исполняемый файл имеет и свои недостатки. А именно — размер программы значительно возрастает. К примеру в моём случае программа из 70Кб «разрослась» до нескольких мегабайт.

Публикация относится к тематической подборке: «Заметки программиста»

Небольшая подборка заметок на тему программирования. Если вы только начинаете свой путь разработчика — обязательно найдёте для себя что нибудь полезное! :)

Понравилась публикация?

0

Поделитесь ей с друзьями!

Так же рекомендуем...

Загрузка рекомендуемых публикаций

Управление фоном

Информационный портал Qbik использует файлы cookie для обеспечения наилучшей функциональности сайта. Подробности на этой странице. Находясь на сайте Вы автоматически соглашаетесь с этими правилами.

Понятно