2. Создаем каталог, например, c:\Qt\Qt6.8.1-x64-msvc2022-static\6.8\Src и распаковываем в него содержимое архива исходников. Сборка в дальнейшем будет привязана к данному каталогу и букве диска. Получим подкаталоги 6.8\Src\qtbase, 6.8\Src\coin и т.д.).
Привет, спасибо за статью.
Хочу внести корректировки. Собирал себе MSVC2022 статичный тулчейн. Мои действия были проще:
1. На борту имел VS2022, Python 3.11, strawberry perl
2. Через их QtInstaller скачал
— Cmake
— Openssl
— Jinja
— исходники 6.8.1
и пр. что было надо.
3. Чтобы не страдать, то сделал копию C:/Qt/6.8.1/Src в C:/Qt/6.8.1/Src_Static и работал с ней.
4. Создал себе папку C:/Qt/6.8.1/msvc2022_64_static для будущего тулчейна
5. В cmd (можно батником) выполнил
5.1 Включил подсос от встудии:
call "C:\Program Files\Microsoft Visual Studio\2022\Preview\VC\Auxiliary\Build\vcvarsall.bat" amd64
5.2 настроил временные энвы
set QTDIR=C:/Qt/6.8.1/Src_Static/qtbase
set PATH=%QTDIR%/bin;%PATH%
set LLVM_INSTALL_DIR=C:/Qt/Tools/llvm-mingw1706_64
set PATH=%LLVM_INSTALL_DIR%/bin;%PATH%
set CMAKE_ROOT=C:/Qt/Tools/CMake_64
set PATH=%CMAKE_ROOT%/bin;%PATH%
set PATH=C:/Qt/Tools/Ninja;%PATH%
set QT_MSVC_STATIC_DIR=C:/Qt/6.8.1/msvc2022_64_static
set OPENSSL_DIR=C:/Qt/Tools/OpenSSLv3/Win_x64
set PATH=%OPENSSL_DIR%/bin;%PATH%
set OPENSSL_INCDIR=%OPENSSL_DIR%/include
set OPENSSL_LIBDIR=%OPENSSL_DIR%/lib
5.3 Проверка доступности инструментов
where perl.exe
where python.exe
where cmake.exe
where ninja.exe
5.4 Переходим в папку
cd C:/Qt/6.8.1/Src_Static
5.5 готовим
configure.bat -release -static -static-runtime ^
-opensource -confirm-license ^
-platform win32-msvc ^
-nomake examples -nomake tests ^
-qt-zlib -qt-libpng -qt-libjpeg ^
-direct2d -plugin-manifests ^
-prefix %QT_MSVC_STATIC_DIR% ^
-skip qtandroidextras ^
-skip qtmacextras -skip qtwayland -skip qtx11extras ^
-skip qtwebengine -skip qtspeech -skip qtvirtualkeyboard ^
-ssl -openssl-linked ^
-I %OPENSSL_INCDIR% -L %OPENSSL_LIBDIR%
5.6 собираем
cmake --build . --parallel
5.7 ставим
cmake --install .
В итоге, у меня норм пашет.
set LLVM_INSTALL_DIR=C:/Qt/Tools/llvm-mingw1706_64
set PATH=%LLVM_INSTALL_DIR%/bin;%PATH%
зачем это надо?