3

我正在尝试使用 VS2015 编译 QtWebkit,QT 5.6 本身构建良好。由于在 5.6 中删除了 webkit 模块,因此我恢复了修订版 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 有关,因为它是在链接之前尝试编译的文件。

4

1 回答 1

1

我试图重现并得到相同的错误,但在我的情况下链接器调用看起来像

link /NOLOGO /DYNAMICBASE /NXCOMPAT /DEBUG /OPT:REF /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 @D:\Temp\_system\nmB77B.tmp
LINK : fatal error LNK1181: cannot open input file '\OPT:REF.obj'

这里我们有 /OPT:REF 链接器参数,它以某种方式被视为输入文件。您可以尝试在构建配置中更改此参数,看看会发生什么。祝你好运)

于 2015-12-25T15:49:08.457 回答