Кросс-компиляция современного C ++ от Linux до Windows - PullRequest
0 голосов
/ 04 мая 2020

У меня есть некоторые современные источники C ++ (скажем, C ++ 17), и у меня нет проблем с компиляцией сложной исходной базы на Linux для Linux 32/64 и на Windows для Windows 32/64 используя mingw-w64 (из msys2).

Теперь я хочу кросс-компиляцию для Windows на Linux, чтобы не использовать виртуальную машину просто для компиляции.

Поэтому я попытался установить mingw-w64 из репозитория Ubuntu, но он был скомпилирован с --enable-threads=win32, который не совместим с std::mutex, например, из C ++ 11.

Я не смог скомпилировать mingw-w64-v7 из исходного кода (он компилирует только кучу библиотек, а не сам компилятор), я не смог получить ни одного двоичного файла, уже скомпилированного для Linux 64 бит.

Каков путь к go установить кросс-компиляцию инструментария, который компилирует современный C ++ из Linux, чтобы получить Windows 32 и 64-битные исполняемые файлы?

1 Ответ

1 голос
/ 05 мая 2020

My Ubuntu 18.04 также имеет набор инструментов mingw-w64 с резьбой POSIX. Попробуйте update-alternatives --list x86_64-w64-mingw32-g++.

...