mach buildsymbols produces empty zips?




Crash Reporting
2 months ago
a month ago


(Reporter: Gankro, Unassigned)


Firefox Tracking Flags

(Not tracked)



(1 attachment)



2 months ago
Created attachment 8935062 [details]

Fairly recent install on x64 windows 10, buildsymbols seems to finish very quickly and produce empty zips and no output dir. As a result the gecko profiler gets no symbols.

See attached log for details (mozconfig is fairly boring and shouldn't affect this).
Apparently the problem is that dump_syms.exe is not present, in objdir/dist/bin/.
config.status contains 'MSVC_HAS_DIA_SDK': '1',
Ted, do you have pointers for where to look next?
Flags: needinfo?(ted)
Sorry, maybe I typoed or you misread, but the binary should be at $objdir/dist/host/bin/dump_syms.exe . If that's not present even though MSVC_HAS_DIA_SDK is set something else is seriously broken.
Flags: needinfo?(ted)
Oh, ok. There is a dump_syms.exe at $objdir/dist/host/bin/.
OK! then that's not the problem, at least! From the log:
 0:15.49 Finished processing c:\gecko\obj-i686-pc-mingw32\toolkit\library\xul.dll in 0.03s

...that is definitely not long enough to have done anything useful! Two questions:
1) Does c:\gecko\obj-i686-pc-mingw32\toolkit\library\xul.pdb exist? If not your build doesn't have debug symbols (unlikely).
2) Does running `c:/gecko/obj-i686-pc-mingw32/dist/host/bin/dump_syms.exe c:/gecko/obj-i686-pc-mingw32/toolkit/library/xul.dll` produce any useful output or an error message? It should produce a lot of output. If it errors the error message should be useful.

Comment 6

2 months ago

$ ./obj-i686-pc-mingw32/dist/host/bin/dump_syms.exe obj-i686-pc-mingw32/dist/bin/xul.dll
CoCreateInstance CLSID_DiaSource {E6756135-1E65-4D17-8576-610761398C3C} failed (msdia*.dll unregistered?)
Open failed
Huh. So somehow you have the DIA SDK installed, but the COM components aren't registered so it doesn't actually work. That's exciting! (Also buildsymbols really should error in this situation, that's a bummer.)

Try running `regsvr32 "c:/Program Files (x86)/Microsoft Visual Studio 14.0/DIA SDK/bin/msdia140.dll"` (assuming you have VS2017 installed) and see if that fixes things?

Comment 8

2 months ago
Had to become administrator, and needed to use this path instead (probably because I was using Community edition):

regsvr32 C\:/Program\ Files\ \(x86\)/Microsoft\ Visual\ Studio/2017/Community/DIA\ SDK/bin/msdia140.dll

But it worked!
You need to log in before you can comment on or make changes to this bug.