【发布时间】:2016-02-11 09:41:46
【问题描述】:
我正在尝试使用 VS2015 编译 QtWebkit,QT 5.6 本身构建良好。由于 webkit 模块在 5.6 中被删除,我恢复了修订
SHA-1: 4116ec2474e608c9a752ace5e8eb92cbd4052ebc "* Removed QtWebkit and QtWebkit-Examples from qt5.git" 所以我可以在运行“init-repository”时下载 webkit 模块。但是,在构建时,我收到了一个没有任何意义的链接器错误:
link /NOLOGO /DYNAMICBASE /NXCOMPAT /INCREMENTAL:NO /SUBSYSTEM:CONSOLE "/MANIFESTDEPENDENCY:type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' publicKeyToken='6595b64144ccf1df' language='*' processorArchitecture='*'" /MANIFEST:embed /OUT:..\..\bin\jsc.exe @C:\Users\PAVLOD~1\AppData\Local\Temp\nmA33.tmp
LINK : fatal error LNK1181: cannot open input file '\OPT:REF.obj'
使用 QT 5.5.1 构建 QtWebkit 没有问题。 5.6 中发生了一些变化,阻止了它开箱即用。很可能我的依赖关系错了。我什至如何开始调试问题?我尝试手动运行该命令,但它抱怨找不到 .tmp 文件。我假设构建脚本会为某些东西生成临时文件,然后删除它们。 它尝试链接的文件我认为与jsc.cpp有关,因为它是在链接之前尝试编译的文件。
【问题讨论】:
-
不是一个真正的答案,但您不应该尝试将您的代码移植到新的 QtWebEngine 框架吗?如果那不可能,我会将您的 qt 版本降级为支持 QtWebkit 的版本。在我看来,如果您尝试在不再支持它的 Qt 版本中使用模块,即使您设法使其工作,也会不断遇到问题
-
谢谢,与 WebKit 相比,WebEngine 体积更大、速度更慢、进程耗尽并且占用更多内存。该应用程序还依赖于一些 WebKit 功能,但我并不担心。此外,该应用必须使用 5.6,因为它具有更好的高 DPI 支持。
-
我在
qtwebkit/Source/JavaScriptCore/Makefile.jsc.Release:20中找到了\OPT:REF。LIBS = ... \OPT:REF ...正确的选项是/OPT:REF,而不是\OPT:REF