Как собрать Image Uploader (GUI) v1.3.3 из исходников на Windows
Благодаря переходу на пакетный менеджер Conan, теперь программу Image Uploader можно собрать (в базовой конфигурации) без танцев с бубном. Наконец-то процесс сборки стал стабильным и воспроизводимым.
Вам понадобятся:
- Git https://git-scm.com/downloads
- Microsoft Visual Studio 2019 или новее (с C++ компилятором) https://visualstudio.microsoft.com/downloads/
- CMake (проверено с v3.18.2, путь к программе должен быть в переменной PATH) https://cmake.org/
- Python 3 https://www.python.org/downloads/
- Conan v1.x (C++ package manager) https://conan.io/ (рекомендую устанавливать с помощью утилиты pip)
Сборка программы
Cкачайте исходники с помощью git:
git clone https://github.com/zenden2k/image-uploader.git
Скопируйте файл "Source\versioninfo.h.dist" в "Source\versioninfo.h".
Запустите программу cmake-gui, выберите директорию image-uploader\Source. Также создайте и выберите директорию, в которой будет происходить процесс сборки.
Для начала процесса настройки нужно нажать кнопку Configure, выбрать нужный компилятор (Visual Studio), платформу (Win32).
Описание опций CMake:
- IU_BUILD_QIMAGEUPLOADER - собирать или нет Qt-версию (недописанную) image uploader. Если у вас не установлен Qt 5, стоит выключить эту опцию
- IU_ENABLE_FFMPEG - если вы хотите собрать с поддержкой библиотек ffmpeg, тогда вам нужно собрать эти библиотеки самостоятельно и скопировать их (avcodec.lib, avformat.lib, avutil.lib, swscale.lib) в директорию
Contrib\Lib
. Также скопировать include-файлы в Contrib\include. - IU_ENABLE_MEGANZ - включить/выключить поддержку облачного хостинга mega.io (mega.nz)
- IU_ENABLE_WEBVIEW2 - включить/выключить использование Microsoft Edge WebView2 вместо ядра Internet Explorer. Для работы этой опции необходимо установить Microsoft Edge WebView2, используя NuGet package manager, (https://docs.microsoft.com/en-us/microsoft-edge/webview2/get-started/win32), а затем скопировать заголовочные файлы (*.h) в директорию "Contrib\Include", и скопировать *.lib файлы в Contrib\Lib directory.
- IU_STATIC_RUNTIME - собирать программу со статическим рантаймом (опция /MT). Включено по-умолчанию
- IU_USE_OPENSSL - включено и выключать не следует
После этапа Configure и изменения настроек нужно нажать кнопку "Generate", после чего будет сгенерировано решение (солюшн) для Visual Studio.
Его можно будет открыть с помощью кнопки Open project. Собственно этот проект и надо будет компилировать.
Для сборки проекта (подтягивания зависимостей) мной был поднят сервер с недостающими пакетами (conan.svistunov.dev). Однако, если по какой-то причине он будет недоступен, недостающие пакеты можно собрать и поместить в локальный кэш командой, которую надо выполнить в каждом подкаталоге Contrib\conan:
conan create . zenden2k/stable --build missing