qt - 在 msvc2017 上构建 Qt 5.12.4 的 qtwebengine 以启用专有编解码器
问题描述
我想在 Windows 10 上构建 Qt 5.12.4 以使 qtwebengine 具有用于 x86 应用程序的专有编解码器,但我64-bit cross-building or native toolchain is required
通过运行qmake .\qtwebengine -- -webengine-proprietary-codecs
命令得到如下错误。
- 以管理员身份运行 Windows 命令提示符。将目录更改为
C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\VC\Auxiliary\Build
并运行以下脚本:
vcvarsall.bat amd64_x86
我运行这个命令是因为我想为 x86 应用程序构建 Qt WebEngine。
- 将目录更改为
D:\Qt\Qt5.12.4\5.12.4\Src
并运行以下命令:
配置-webengine-专有编解码器
我安装了这些 Qt webengine 编译先决条件:
-Python 2.7.15
-Bison,Flex 从这里
-GPerf(32bit) 从这里
-ActivePerl(64bit) 从这里
-LLVM(64bit) 从这里
-Visual Studio 2017
-Windows 10 SDK
我还将它们添加到 Windows 路径并重新启动我的机器。
此外,我还安装了 MSVC 2015 64 位、MSVC 2017 32 位、MSVC 2017 64 位、Sources、Qt WebEngine 和 Qt 网络授权组件。
解决方案
对于 Windows,我使用 bat 文件使用专有编解码器编译了 qtwebengine。
创建 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
推荐阅读
- go - 如何将接口内的值转换为golang中的地图?
- delphi - Delphi 控制台应用程序:如何将 OnHelp 添加到消息对话框?
- reactjs - ReactJS 中的单元测试功能
- ansible - 为什么 ansible 不适用于 vmware 模块?
- firebase - 在 Firestore 中创建 UID 作为字段
- python - 操作数不能与形状一起广播 (3,3) (2,2)
- python - 画布上的框架与画布中创建的线条重叠
- python - 如果数据框为空,则删除/清除工作表
- math - 当半径和一个端点已知时圆角的端点
- angular9 - 单击离子选择时,离子选择选项隐藏在视图下