Если вдруг понадобится на линуксе кросскомпилить бинарник под Windows, вот инструкция:
$ sudo apt install mingw-w64
$ i686-w64-mingw32-g++ -static-libgcc -static-libstdc++ FILE.cpp
где FILE.cpp — файл с компилируемым кодом
Да, и еще сначала из непонятно чего FILE.cpp перевести в UTF-8, иначе компиляторы сходят с ума (в Kate: Файл->Сохранить в другой кодировке).
Статическая линковка (-static-libgcc -static-libstdc++) нужна, чтобы не было ошибок, как на скриншоте. i686-w64-mingw32-g++ скомпилирует 32-битный исполняемый файл из кода на C++, в той же папке на выходе будет файл a.exe, с помощью команды
$ file a.exe
можно убедиться, что это действительно, например, «PE32 executable (console) Intel 80386, for MS Windows».
i686-w64-mingw32-gcc скомпилирует код на Си.
Если кто любит понапихать кучу лишних библиотек через #include, то все лишние тоже надо удалить. На packages.ubuntu.com во второй поисковой форме можно по имени файла, например, conio.h, искать, в какой пакет из репозиториев входит библиотека, пример: https://packages.ubuntu.com/search?mode=exactfilename&suite=bionic§ion=all&arch=any&keywords=conio.h&searchon=contents
Отправить ответ