VS2017+Qt5.12.7-重新编译webengine-MP4播放的问题

问题描述:
Qt中嵌入webengine,默认无法播放MP4流媒体视频的问题

解决方法:
放开webengine-proprietary-codecs参数,且重新编译

因为中文环境编译总是出现下列错误:
ninja: build stopped: subcommand failed.
NMAKE : fatal error U1077: 'call' : return code '0x1' Stop.
NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.14.26428\bin\HostX64\x64\nmake.exe"' : return code '0x2' Stop.
NMAKE : fatal error U1077: '(' : return code '0x2' Stop.
NMAKE : fatal error U1077: 'cd' : return code '0x2' Stop.
NMAKE : fatal error U1077: 'cd' : return code '0x2' Stop

个人尝试过将系统改成英文或者将报错的文件改成“UTF-8 With BOM”格式,均没有彻底解决,因此放弃了该方案。建议想要编译webengine的,在虚拟机环境下,重新安装干净的英文系统以及相关程序。具体步骤如下(本人尝试过两次,都顺利编译通过)

准备工作:
1)安装vmware虚拟机,是12以上版本,因为以下版本无法安装win10;
2)在微软官网下载win10镜像文件;
3)在虚拟机中安装win10系统(英文版本,硬盘大小开 250G 以上最好,不需要分盘);
4)将虚拟机内存开到尽可能大,比如(8G);
5)将虚拟机中win10系统休眠关闭,以免编译的时候电脑休眠;
6)将安装程序copy到虚拟机的win10系统中(vs2017/qt5.12.7/python27)(TIP:本机与虚拟机之间文件直接复制的设置可以使用百度搜索“虚拟机与本地主机的文件怎么实现直接复制”可以搜到图文描述)
7)正常安装vs qt以及python(python的安装没有选择直接安装即可,就不截图了)


VS安装勾选截图

Qt安装勾选截图

8)安装好python之后将python.exe copy到Qt5.12.7\5.12.7\Src\gnuwin32\bin路径下


拷贝python.exe

9)配置好python环境变量(TIP:此时可以用vmware的快照功能,防止后面编译出错,可以恢复到干净的环境)
Python环境变量配置

进入正题编译(以下展示的是编译64位的):
1、以管理员身份打开vs2017-64命令提示符(x64 Native Tools Command Prompt for vs 2017)


打开命令提示符

2、转到qtwebengine目录下


转到webengine目录下

3、执行:c:\Qt\Qt5.12.7\5.12.7\msvc2017_64\bin\qmake.exe -- -webengine-proprietary-codecs 命令
("c:\Qt\Qt5.12.7\5.12.7\msvc2017_64\bin"是自己的安装路径)
执行命令Proprietary Codecs

返回结果 Proprietary Codecs是YES了


Proprietary Codecs执行结果

4、执行 nmake && nmake install 命令
接下来就是等待编译完成,编译完成的话,在\Qt5.12.7\5.12.7\Src\qtwebengine\bin文件夹下会生成相关dll,且被自动拷贝到\Qt5.12.7\5.12.7\msvc2017_64\bin路径下

你可能感兴趣的:(VS2017+Qt5.12.7-重新编译webengine-MP4播放的问题)