Как скомпилировать Magick ++ без Cygwin или Visual Studio? - PullRequest
0 голосов
/ 02 октября 2019

Я настраиваю среду разработки на своем ПК с Windows, чтобы у меня было больше мест для работы над проектом. Я установил VS Build Tools 2019 в своей системе вместе с CMake v3.15.3, GnuWin32 Make v3.81 и LLVM CLang v8.0.1.

Вся официальная документация на Magick ++ показывает только то, как компилироваться с использованием Visual Studio. , Cygwin или MinGW. Кто-нибудь знает, как скомпилировать его без каких-либо из них? На моем SSD недостаточно места, и я бы предпочел не устанавливать что-либо, чтобы никогда больше не трогать.

Я думаю о том, чтобы использовать Ninja для его сборки, поскольку он поставляется с VS Build Tools. Кто-то предложил использовать Make, но не используется для компиляции вещей для систем Linux?


РЕДАКТИРОВАТЬ: Насколько мне известно, ImageMagick не поставляется с файлом CMakeLists.txt.

Я также слышал о msbuild.exe.

1 Ответ

0 голосов
/ 02 октября 2019

Похоже, у вас есть все необходимое для компиляции программы. Предполагая, что когда вы установили инструменты сборки, вы установили материал C ++. Вы можете сэкономить место, удалив LLVM, если не хотите компилировать с помощью clang ++. LLVM Windows опирается на библиотеки инструментов сборки, и я никогда не возился с этим достаточно, чтобы он работал нормально;Я работаю на Mac или Linux. Хотя я нашел это руководство от LLVM. Похоже, что требуется Visual Studio, поэтому вам лучше обойтись, просто удалив его.

Если пространство вызывает беспокойство (вы не говорите, сколько свободного места у вас на самом деле), MinGW или Cygwin намного меньше, чеминструменты сборки MS C ++.

Ninja не является компилятором;он похож на make в том, что его можно использовать для автоматизации компиляции и компоновки вашей программы, но оба эти инструмента делают это, используя преимущества компилятора / компоновщика и библиотек C ++. make также доступна для Windows через MinGW или Cygwin.

cmake - это дополнительный уровень абстракции над ninja / make, поскольку он может создавать для вас ninja.build или make-файлы на основе инструментов, установленных в вашей системе. cmake действительно значительно упрощает процесс компиляции. cmake выберет ниндзя по умолчанию, если он присутствует. Проект будет содержать как минимум один файл CMakeLists.txt, если вы сможете использовать cmake.

Прошло некоторое время с тех пор, как я использовал MinGW или Cygwin (один или другой, вам не нужны оба), но когда я баловался чем-то похожим (MSYS2), это заняло чуть меньше 700 МБесли все, что вам нужно, это работать с C ++.

...