Сборка qtwebengine из Qt 5.12.4 на msvc2017 для включения проприетарных кодеков - PullRequest
3 голосов
/ 08 июля 2019

Я хочу собрать Qt 5.12.4 в Windows 10, чтобы иметь qtwebengine с проприетарным кодеком для приложений x86, но я получаю ошибку 64-bit cross-building or native toolchain is required следующим образом, запустив команду qmake .\qtwebengine -- -webengine-proprietary-codecs.

qmake webengine with proprietary codecs Перед запуском команды qmake я делаю следующие шаги:

  1. Запускаем командную строку Windows от имени администратора.измените каталог на

C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\VC\Auxiliary\Build

и запустите следующий скрипт:

vcvarsall.bat amd64_x86

Iвыполните эту команду, потому что Я хочу собрать Qt WebEngine для приложений x86.

Измените каталог на

D:\Qt\Qt5.12.4\5.12.4\Src

и выполните следующую команду:

configure -webengine-proprietary-codecs

После этого параметра конфигурации я получил такой результат: enter image description here

Я установил следующие предварительные требования для компиляции Qt webengine:

-Python 2.7.15

-Bison, Flex от здесь

-GPerf (32 бита) от здесь

-ActivePerl (64 бита) от здесь

-LLVM (64 бита) из здесь

-Visual Studio 2017

-Windows 10 SDK

Я также добавляю их в путь Windows и перезагружаю свою машину.

Кроме того, я также устанавливаю MSVC 2015 64-bit, MSVC 2017 32-bit, MSVC 2017 64-bit, Sources, Qt WebEngine и Qt Network Authorization.компоненты.

1 Ответ

0 голосов
/ 11 июля 2019

Для windows я скомпилировал qtwebengine с проприетарными кодеками, используя файл bat.

create qt5vars.bat.Вставьте ниже строки.Поместите этот файл в папку D: \ Qt \ Qt5.12.4 \ 5.12.4 \ Src.

@echo off

REM Set up \Microsoft Visual Studio 2015, where <arch> is \c amd64, \c x86, etc.
CALL "C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\VC\Auxiliary\Build\vcvarsall.bat" amd64_x86

REM Edit this location to point to the source code of Qt
SET _ROOT=D:\Qt\Qt5.12.4\5.12.4\Src

SET PATH=%_ROOT%\qtbase\bin;%_ROOT%\gnuwin32\bin;%PATH%

SET _ROOT=

REM Keeps the command line open when this script is run.
cmd /k

Запустите файл bat.

Примечание: для компиляции qtwebengine вам нужно включитьподдержка длинных путей, иначе компиляция может закончиться неудачей.Чтобы включить его, используйте ссылку ниже: https://superuser.com/questions/1119883/windows-10-enable-ntfs-long-paths-policy-option-missing

...