“Cannot find or open the PDB file.” for Qt6 commercial release debug symbol files.

huangapple go评论65阅读模式
英文:

"Cannot find or open the PDB file." for Qt6 commercial release debug symbol files

问题

I'm here to provide the translation:

"我正在尝试调试我的项目。我正在使用Visual Studio 2022和Qt 4.6.2商业版。我想要进入Qt库的代码,但无法做到,因为

> 找不到或无法打开PDB文件。

我已经仔细检查了从Qt下载的内容是否匹配(它们的MD5文件与我下载的内容一致)。

我检查了用于调试Qt Core DLL的dll和pdb签名:

dumpbin.exe Qt6Cored.dll 中有以下行:

> 调试目录
>
> 时间 类型 大小 RVA 指针
> -------- ------- -------- -------- --------
> 6397073D cv 44 00C6B300 C69B00 格式:RSDS,{B713CCD9-B63E-45B8-BAB2-1165E50F2E75},1,
> C:\Users\qt\work\qt\qtbase\bin\Qt6Cored.pdb
> 6397073D feat 14 00C6B344 C69B44 计数:Pre-VC++ 11.00=0,C/C++=305,/GS=305,/sdl=0,guardN=50

dbh.exe Qt6Cored.pdb info 给出以下行:

PdbSig70:0xb8de71e0,0xe814,0x4e1c,0xbc,0x37,0xb8,0xc1,0x4a,0xe8,0x94,0xde

格式化两个ID后,您可以看到不匹配:

B713CCD9B63E45B8BAB21165E50F2E75(dll)
B8DE71E0E8144E1CBC37B8C14AE894DE(pdb)

我们已经联系了Qt,他们说:“这在2019年的版本中似乎正常工作”。

还有其他人遇到这个问题吗?还是我在分析中做错了什么?如果有人有解决方法/黑客方法(除了重新构建Qt自己),请告诉我。

我也创建了QTBUG-112989。"

英文:

I'm trying to debug my project. I'm using Visual Studio 2022 and Qt 4.6.2 Commercial. I'd like to step into Qt library code, but cannot because

> Cannot find or open the PDB file.

I've double checked what I've downloaded from Qt matches (their MD5 file agree with what I downloaded).

I inspected the dll and pdb signatures for the debug Qt Core DLL:

dumpbin.exe Qt6Cored.dll has the lines:

> Debug Directories
>
> Time Type Size RVA Pointer
> -------- ------- -------- -------- --------
> 6397073D cv 44 00C6B300 C69B00 Format: RSDS, {B713CCD9-B63E-45B8-BAB2-1165E50F2E75}, 1,
> C:\Users\qt\work\qt\qtbase\bin\Qt6Cored.pdb
> 6397073D feat 14 00C6B344 C69B44 Counts: Pre-VC++ 11.00=0, C/C++=305, /GS=305, /sdl=0, guardN=50

dbh.exe Qt6Cored.pdb info gives the line:

PdbSig70 : 0xb8de71e0, 0xe814, 0x4e1c, 0xbc, 0x37, 0xb8, 0xc1, 0x4a, 0xe8, 0x94, 0xde

After formatting both IDs, you see the mismatch:

B713CCD9B63E45B8BAB21165E50F2E75 (dll)
B8DE71E0E8144E1CBC37B8C14AE894DE (pdb)

We have contacted Qt and they said "This seems working here with 2019".

Is anyone else seeing this issue? Or did I do something wrong with my analysis? Also, if someone has a workaround/hack (other than rebuilding Qt ourselves), let me know.

I created QTBUG-112989 as well.

答案1

得分: 1

Qt回复我们了 - 这是与可下载的离线安装程序/PDB文件有关的问题。使用在线安装程序对于Qt 6.4.3,DLL和PDB文件是匹配的。示例:

Qt6Core.dll EA4BB91BFEB8405EB812141B301B1B191
Qt6Core.pdb EA4BB91BFEB8405EB812141B301B1B191
英文:

Qt got back to us - and it is a problem with the offline installers/PDB files available for download. Using the online installers for Qt 6.4.3, the DLLs and PDB files match. Example:

Qt6Core.dll EA4BB91BFEB8405EB812141B301B1B191
Qt6Core.pdb EA4BB91BFEB8405EB812141B301B1B191

huangapple
  • 本文由 发表于 2023年4月20日 02:51:53
  • 转载请务必保留本文链接:https://go.coder-hub.com/76057939.html
匿名

发表评论

匿名网友

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定