3

我想在调试发布模式下从带有 PDB 文件的源代码构建 Qt5,但我遇到了两个问题:

  1. 没有生成发布 PDB 文件(这里是解决方案),

  2. qt 构建系统没有将发布 PDB 文件部署到给定的prefix构建文件夹,因为它在nmake.exe install.

这是示例:

> configure -confirm-license -debug-and-release -opensource -shared -platform win32-msvc2008 -prefix x86 -mp -no-opengl -nomake examples
> nmake.exe
> nmake.exe install

构建完成后,我有一个包含DLLLIBqtbase\bin\x86\x86\bin的文件夹,并且只调试 PDB文件,但发布 PDB文件除外。Qt 构建脚本不会像调试 PDB 文件那样复制发行版 PDB 文件。发布创建并位于模块中的 PDB 文件。

有谁知道如何解决这个问题?

PS:作为我自己的解决方案,我想从每个模块文件夹中复制所有 *.pdb 文件,但我认为这种情况是最糟糕的,首先我会尝试找到更人性化的解决方案。

PSS:Qt4 没有这样的行为,我们也没有问题。

P3S:这是 Qt类似的错误

谢谢,最好的问候!


环境:

版本:Qt 5.4.1

系统:赢8.1

工具集:MSVS2008 (vc9)


有用的链接:

  1. qmake 变量参考
  2. 如何为 Qt 库的发布版本创建 .pdb 文件
  3. 所以
4

2 回答 2

4

解决了-force-debug-info该死的选项...

于 2015-03-27T13:58:51.627 回答
1

Qt.io - 使用 pdb 发布

附加(不在文件开头插入):

QMAKE_CFLAGS_RELEASE    = -O2 -MD -zi
QMAKE_LFLAGS_RELEASE    = /INCREMENTAL:NO /DEBUG

进入 qmake.conf,然后你会得到 release pdbs

于 2016-05-19T02:49:01.023 回答