[Bug 1201107] New: windows:mingw:win32/mingw32-
http://bugzilla.opensuse.org/show_bug.cgi?id=1201107 Bug ID: 1201107 Summary: windows:mingw:win32/mingw32- Classification: openSUSE Product: openSUSE.org Version: unspecified Hardware: Other OS: Other Status: NEW Severity: Normal Priority: P5 - None Component: 3rd party software Assignee: fstrba@suse.com Reporter: ralf.habacker@freenet.de QA Contact: screening-team-bugs@suse.de CC: fridrich.strba@bluewin.ch, hib@hiberis.nl, mkbosmans@gmail.com Found By: --- Blocker: --- Several packages like mingw32-liborcus fails to extract symbols caused by a crash of i686-w64-mingw32-dump_syms: [ 118s] extracting debug info from /home/abuild/rpmbuild/BUILDROOT/mingw32-liborcus-0.11.2-lp153.6.1.x86_64/usr/i686-w64-mingw32/sys-root/mingw/bin/orcus-ods.exe [ 118s] /usr/bin/i686-w64-mingw32-gen_sym_files: line 30: 17860 Segmentation fault i686-w64-mingw32-dump_syms $1 $PATH_MAP > $SYMFILE and later [ 129s] mingw32-liborcus-debug.noarch: W: zero-length /usr/i686-w64-mingw32/sys-root/mingw/symbols/liborcus-0.11-0.dll/liborcus-0.11-0.dll.sym [ 129s] mingw32-liborcus-debug.noarch: W: zero-length /usr/i686-w64-mingw32/sys-root/mingw/symbols/liborcus-mso-0.11-0.dll/liborcus-mso-0.11-0.dll.sym [ 129s] mingw32-liborcus-debug.noarch: W: zero-length /usr/i686-w64-mingw32/sys-root/mingw/symbols/liborcus-parser-0.11-0.dll/liborcus-parser-0.11-0.dll.sym [ 129s] mingw32-liborcus-debug.noarch: W: zero-length /usr/i686-w64-mingw32/sys-root/mingw/symbols/liborcus-spreadsheet-model-0.11-0.dll/liborcus-spreadsheet-model-0.11-0.dll.sym [ 129s] mingw32-liborcus-debug.noarch: W: zero-length /usr/i686-w64-mingw32/sys-root/mingw/symbols/orcus-css-dump.exe/orcus-css-dump.exe.sym [ 129s] mingw32-liborcus-debug.noarch: W: zero-length /usr/i686-w64-mingw32/sys-root/mingw/symbols/orcus-csv.exe/orcus-csv.exe.sym [ 129s] mingw32-liborcus-debug.noarch: W: zero-length /usr/i686-w64-mingw32/sys-root/mingw/symbols/orcus-detect.exe/orcus-detect.exe.sym [ 129s] mingw32-liborcus-debug.noarch: W: zero-length /usr/i686-w64-mingw32/sys-root/mingw/symbols/orcus-json.exe/orcus-json.exe.sym [ 129s] mingw32-liborcus-debug.noarch: W: zero-length /usr/i686-w64-mingw32/sys-root/mingw/symbols/orcus-mso-encryption.exe/orcus-mso-encryption.exe.sym [ 129s] mingw32-liborcus-debug.noarch: W: zero-length /usr/i686-w64-mingw32/sys-root/mingw/symbols/orcus-ods.exe/orcus-ods.exe.sym [ 129s] mingw32-liborcus-debug.noarch: W: zero-length /usr/i686-w64-mingw32/sys-root/mingw/symbols/orcus-xls-xml.exe/orcus-xls-xml.exe.sym [ 129s] mingw32-liborcus-debug.noarch: W: zero-length /usr/i686-w64-mingw32/sys-root/mingw/symbols/orcus-xlsx.exe/orcus-xlsx.exe.sym [ 129s] mingw32-liborcus-debug.noarch: W: zero-length /usr/i686-w64-mingw32/sys-root/mingw/symbols/orcus-xml-dump.exe/orcus-xml-dump.exe.sym [ 129s] mingw32-liborcus-debug.noarch: W: zero-length /usr/i686-w64-mingw32/sys-root/mingw/symbols/orcus-xml.exe/orcus-xml.exe.sym [ 129s] mingw32-liborcus-debug.noarch: W: zero-length /usr/i686-w64-mingw32/sys-root/mingw/symbols/orcus-yaml.exe/orcus-yaml.exe.sym [ 129s] mingw32-liborcus-debug.noarch: W: zero-length /usr/i686-w64-mingw32/sys-root/mingw/symbols/orcus-zip-dump.exe/orcus-zip-dump.exe.sym [ 129s] 8 packages and 0 specfiles checked; 0 errors, 29 warnings. see https://build.opensuse.org/package/live_build_log/windows:mingw:win32/mingw3... for the related build log The crashing tool i686-w64-mingw32-dump_syms is located in rpm -q -f `which i686-w64-mingw32-dump_syms` mingw32-cross-breakpad-tools-20140827-lp153.13.1.x86_64 -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=1201107 Ralf Habacker <ralf.habacker@freenet.de> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |jengelh@inai.de Summary|windows:mingw:win32/mingw32 |windows:mingw:win32/mingw32 |- |-xxx: Segmentation fault in | |i686-w64-mingw32-dump_syms -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=1201107 http://bugzilla.opensuse.org/show_bug.cgi?id=1201107#c1 --- Comment #1 from Ralf Habacker <ralf.habacker@freenet.de> --- The mentioned tools is based on the package mingw32-cross-breakpad-tools (https://build.opensuse.org/repositories/windows:mingw:win32/mingw32-cross-br...), which is currently build without debug information, which are required to get more insight into the issue. To have that package with debug information, generating debug info has been now enabled. -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=1201107 http://bugzilla.opensuse.org/show_bug.cgi?id=1201107#c2 --- Comment #2 from Ralf Habacker <ralf.habacker@freenet.de> --- gdb --args /usr/bin/i686-w64-mingw32-dump_syms bin/kdeinit4.exe Reading symbols from /usr/bin/i686-w64-mingw32-dump_syms... Reading symbols from /usr/lib/debug/usr/i686-w64-mingw32/bin/dump_syms-20140827-lp153.12.2.x86_64.debug... (gdb) r Starting program: /usr/bin/i686-w64-mingw32-dump_syms bin/kdeinit4.exe Missing separate debuginfos, use: zypper install glibc-debuginfo-2.31-150300.20.7.x86_64 Program received signal SIGSEGV, Segmentation fault. dwarf2reader::ByteReader::ReadUnsignedLEB128 (this=<optimized out>, len=<synthetic pointer>, buffer=0x7ffffd2d9e02 <error: Cannot access memory at address 0x7ffffd2d9e02>) at /usr/src/debug/mingw32-cross-breakpad-tools-20140827-lp153.12.2.x86_64/src/common/dwarf/bytereader-inl.h:100 100 byte = *buffer++; Missing separate debuginfos, use: zypper install libgcc_s1-debuginfo-11.2.1+git610-150000.1.6.6.x86_64 libstdc++6-debuginfo-11.2.1+git610-150000.1.6.6.x86_64 (gdb) bt #0 dwarf2reader::ByteReader::ReadUnsignedLEB128 (this=<optimized out>, len=<synthetic pointer>, buffer=0x7ffffd2d9e02 <error: Cannot access memory at address 0x7ffffd2d9e02>) at /usr/src/debug/mingw32-cross-breakpad-tools-20140827-lp153.12.2.x86_64/src/common/dwarf/bytereader-inl.h:100 #1 dwarf2reader::CompilationUnit::ReadAbbrevs (this=this@entry=0x7fffffffd380) at /usr/src/debug/mingw32-cross-breakpad-tools-20140827-lp153.12.2.x86_64/src/common/dwarf/dwarf2reader.cc:96 #2 0x0000555555582ccf in dwarf2reader::CompilationUnit::Start (this=this@entry=0x7fffffffd380) at /usr/src/debug/mingw32-cross-breakpad-tools-20140827-lp153.12.2.x86_64/src/common/dwarf/dwarf2reader.cc:285 #3 0x000055555556ca7f in (anonymous namespace)::LoadDwarf<google_breakpad::PeCoffClass32> (module=0x5555557a4f70, handle_inter_cu_refs=<optimized out>, big_endian=false, header=0x7ffff7f15000 "MZ\220", dwarf_filename=...) at /usr/src/debug/mingw32-cross-breakpad-tools-20140827-lp153.12.2.x86_64/src/common/pecoff/dump_symbols-inl.h:267 #4 (anonymous namespace)::LoadSymbols<google_breakpad::PeCoffClass32> (obj_file=..., big_endian=<optimized out>, header=header@entry=0x7ffff7f15000 "MZ\220", read_gnu_debug_link=<optimized out>, info=info@entry=0x7fffffffd680, options=..., module=0x5555557a4f70) at /usr/src/debug/mingw32-cross-breakpad-tools-20140827-lp153.12.2.x86_64/src/common/pecoff/dump_symbols-inl.h:538 #5 0x000055555556d18e in (anonymous namespace)::ReadSymbolDataFromObjectFile<google_breakpad::PeCoffClass32> (header=0x7ffff7f15000 "MZ\220", obj_filename=..., debug_dirs=..., options=..., out_module=0x7fffffffd7d0) at /usr/src/debug/mingw32-cross-breakpad-tools-20140827-lp153.12.2.x86_64/src/common/pecoff/dump_symbols-inl.h:676 #6 0x000055555556efe6 in google_breakpad::ReadSymbolData (obj_file=..., debug_dirs=..., options=..., module=module@entry=0x7fffffffd7d0) at /usr/src/debug/mingw32-cross-breakpad-tools-20140827-lp153.12.2.x86_64/src/common/pecoff/dump_symbols.cc:87 #7 0x000055555556f036 in google_breakpad::WriteSymbolFile (obj_file=..., debug_dirs=..., options=..., sym_stream=...) at /usr/src/debug/mingw32-cross-breakpad-tools-20140827-lp153.12.2.x86_64/src/common/pecoff/dump_symbols.cc:68 #8 0x000055555556a802 in main (argc=<optimized out>, argv=<optimized out>) at /usr/src/debug/mingw32-cross-breakpad-tools-20140827-lp153.12.2.x86_64/src/tools/windows/dump_syms_dwarf/dump_syms.cc:82 (gdb) -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=1201107 http://bugzilla.opensuse.org/show_bug.cgi?id=1201107#c3 --- Comment #3 from Ralf Habacker <ralf.habacker@freenet.de> --- Created attachment 859970 --> http://bugzilla.opensuse.org/attachment.cgi?id=859970&action=edit build log for gcc12 and binutils 2.33 The issue does not occur with gcc12 and binutils 2.33 as shown from the appended log: [ 168s] extracting debug info from /home/abuild/rpmbuild/BUILDROOT/mingw32-liborcus-0.11.2-lp153.6.1.x86_64/usr/i686-w64-mingw32/sys-root/mingw/bin/liborcus-0.11-0.dll [ 169s] /home/abuild/rpmbuild/BUILDROOT/mingw32-liborcus-0.11.2-lp153.6.1.x86_64/usr/i686-w64-mingw32/sys-root/mingw/symbols/liborcus-0.11-0.dll/E096C2548BBFFFDDD7E5D34E31C2D1FB1/liborcus-0.11-0.dll.sym [ 169s] ~/rpmbuild/BUILDROOT/mingw32-liborcus-0.11.2-lp153.6.1.x86_64/usr/i686-w64-mingw32/sys-root/mingw/bin ~/rpmbuild/BUILD/liborcus-0.11.2 [ 170s] ~/rpmbuild/BUILD/liborcus-0.11.2 [ 170s] extracting debug info from /home/abuild/rpmbuild/BUILDROOT/mingw32-liborcus-0.11.2-lp153.6.1.x86_64/usr/i686-w64-mingw32/sys-root/mingw/bin/liborcus-mso-0.11-0.dll [ 170s] /home/abuild/rpmbuild/BUILDROOT/mingw32-liborcus-0.11.2-lp153.6.1.x86_64/usr/i686-w64-mingw32/sys-root/mingw/symbols/liborcus-mso-0.11-0.dll/18938F56640FA9AEF22D594A52397CF21/liborcus-mso-0.11-0.dll.sym which makes me suspect that the update to mingw32-binutils-2.38 is responsible for this problem and needs to be fixed there. -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=1201107 http://bugzilla.opensuse.org/show_bug.cgi?id=1201107#c4 Ralf Habacker <ralf.habacker@freenet.de> changed: What |Removed |Added ---------------------------------------------------------------------------- Summary|windows:mingw:win32/mingw32 |windows:mingw:win32|64/ming |-xxx: Segmentation fault in |w64-xxx: Segmentation fault |i686-w64-mingw32-dump_syms |in | |x86_64|i686-w64-mingw32-dum | |p_syms --- Comment #4 from Ralf Habacker <ralf.habacker@freenet.de> --- The issue also happens with the mingw64 variants. -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=1201107 http://bugzilla.opensuse.org/show_bug.cgi?id=1201107#c5 --- Comment #5 from Ralf Habacker <ralf.habacker@freenet.de> --- The same failure also occurs then building for tumbleweed on windows:mingw:win32: https://build.opensuse.org/build/windows:mingw:win32/openSUSE_Tumbleweed/x86... [ 390s] + /usr/lib/rpm/mingw32-find-debuginfo.sh /home/abuild/rpmbuild/BUILD 1 [ 390s] extracting debug info from /home/abuild/rpmbuild/BUILDROOT/mingw32-binutils-2.38-10.1.x86_64/usr/i686-w64-mingw32/sys-root/mingw/bin/addr2line.exe [ 390s] /usr/bin/i686-w64-mingw32-gen_sym_files: line 30: 5766 Segmentation fault i686-w64-mingw32-dump_syms $1 $PATH_MAP > $SYMFILE but not with the same package on openSUSE:Factory https://build.opensuse.org/build/openSUSE:Factory/standard/x86_64/mingw32-bi... [ 137s] + /usr/lib/rpm/mingw32-find-debuginfo.sh /home/abuild/rpmbuild/BUILD 1 [ 137s] extracting debug info from /home/abuild/rpmbuild/BUILDROOT/mingw32-binutils-2.38-1.1.x86_64/usr/i686-w64-mingw32/sys-root/mingw/bin/addr2line.exe -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=1201107 http://bugzilla.opensuse.org/show_bug.cgi?id=1201107#c7 --- Comment #7 from Ralf Habacker <ralf.habacker@freenet.de> --- (In reply to Jan Engelhardt from comment #6)
I looked at Fedora what they're doing. There is no use of breakpad's dump_syms program at all, so I think it should just be removed from openSUSE.
A look into the file /usr/lib/rpm/mingw32-find-debuginfo.sh shows that the *.sym files are used to find the corresponding source files and add them to the debug package: # breakpad symbols symfile=`"$host-gen_sym_files" "$f" "$RPM_BUILD_ROOT$SYMBOL_DIR"` echo $symfile # grep all listed source files belonging to this package into temporary source file list cat $symfile | grep "FILE" | cut -d' ' -f3 | grep $srcdir >> $SOURCEFILE.tmp # remap file path in symbol file to src debug location # we remap all files to make finding src files from other packages possible sed -i "s,$BUILDDIR,$DEBUGSOURCE_DIR,g" $symfile -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=1201107 http://bugzilla.opensuse.org/show_bug.cgi?id=1201107#c8 --- Comment #8 from Ralf Habacker <ralf.habacker@freenet.de> --- (In reply to Ralf Habacker from comment #3)
which makes me suspect that the update to mingw32-binutils-2.38 is responsible for this problem and needs to be fixed there.
The issue may also be caused by the old version used by mingw32-cross-breakpad-tools. There is a newer version available at https://github.com/msys2/MINGW-packages/tree/master/mingw-w64-breakpad-git -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=1201107 http://bugzilla.opensuse.org/show_bug.cgi?id=1201107#c9 --- Comment #9 from Ralf Habacker <ralf.habacker@freenet.de> --- (In reply to Ralf Habacker from comment #8)
The issue may also be caused by the old version used by mingw32-cross-breakpad-tools. There is a newer version available at https://github.com/msys2/MINGW-packages/tree/master/mingw-w64-breakpad-git
An attempt to use a suitably updated mingw32-cross-breakpad-tools package did not solve the problem. Looks like an incompatibility between binutils-2.38 and breakpad-tools. -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=1201107 http://bugzilla.opensuse.org/show_bug.cgi?id=1201107#c10 --- Comment #10 from Ralf Habacker <ralf.habacker@freenet.de> --- (In reply to Ralf Habacker from comment #9)
Looks like an incompatibility between binutils-2.38 and breakpad-tools.
from https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;a=blob_plain;f=ld/N... Changes in 2.36: * The creation of PE format DLLs now defaults to using a more secure set of DLL characteristics. This may be related to this issue. -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=1201107 http://bugzilla.opensuse.org/show_bug.cgi?id=1201107#c11 --- Comment #11 from Ralf Habacker <ralf.habacker@freenet.de> --- (In reply to Ralf Habacker from comment #10)
Changes in 2.36: * The creation of PE format DLLs now defaults to using a more secure set of DLL characteristics.
This may be related to this issue.
I think this change is related as a build with binutils-2.35 does not show this error. -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=1201107 http://bugzilla.opensuse.org/show_bug.cgi?id=1201107#c12 --- Comment #12 from Ralf Habacker <ralf.habacker@freenet.de> --- (In reply to Ralf Habacker from comment #7)
A look into the file /usr/lib/rpm/mingw32-find-debuginfo.sh shows that the *.sym files are used to find the corresponding source files and add them to the debug package:
For native packages the same task is performed by a similar tool - i think it is named 'dwz' -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=1201107 Ralf Habacker <ralf.habacker@freenet.de> changed: What |Removed |Added ---------------------------------------------------------------------------- Summary|windows:mingw:win32|64/ming |windows:mingw:win32|64/ming |w64-xxx: Segmentation fault |w64-xxx: support for debug |in |source packaging is broken |x86_64|i686-w64-mingw32-dum | |p_syms | -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=1201107 http://bugzilla.opensuse.org/show_bug.cgi?id=1201107#c13 --- Comment #13 from Ralf Habacker <ralf.habacker@freenet.de> --- (In reply to Ralf Habacker from comment #12)
For native packages the same task is performed by a similar tool - i think it is named 'dwz'
Is there any other receipe known with which the service provided by the breakpad tools (extracting source file information) could be replaced ? -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=1201107 http://bugzilla.opensuse.org/show_bug.cgi?id=1201107#c14 --- Comment #14 from Ralf Habacker <ralf.habacker@freenet.de> --- (In reply to Jan Engelhardt from comment #6)
I looked at Fedora what they're doing. There is no use of breakpad's dump_syms program at all, so I think it should just be removed from openSUSE.
When debugging with gdb, how do they get the associated "static" source files (from the tarball or scm repo) and the build system generated source files (from the build root) that are required for source level debugging? -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=1201107 http://bugzilla.opensuse.org/show_bug.cgi?id=1201107#c15 --- Comment #15 from Jan Engelhardt <jengelh@inai.de> --- Both gdb and dump_syms parse DWARF info. I have a suspicion that the toolchain is emitting dwarf5 but dump_syms only works with dwarf2. I'm still waiting on OBS rebuilding the old state in a home prj so I can check this hypothesis. -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=1201107 http://bugzilla.opensuse.org/show_bug.cgi?id=1201107#c16 --- Comment #16 from Jan Engelhardt <jengelh@inai.de> --- i686-mingw-gcc10: section "/19" aka ".debug_info" looks like ���00003200 8e230000 04000000-00000401 474e5520 |?# ? ??GNU | ���00003210 43393920 31302e33-2e30202d 6d6d732d |C99 10.3.0 -mms-| ���00003220 62697466 69656c64-73202d6d 3332202d |bitfields -m32 -| ���00003230 6d74756e 653d6765-6e657269 63202d6d |mtune=generic -m| i686-mingw-gcc12: section looks like so ���00003600 0a250000 05000104-00000000 35474e55 |?% ? ?? 5GNU| ���00003610 20433939 2031322e-312e3020 2d6d6d73 | C99 12.1.0 -mms| ���00003620 2d626974 6669656c-6473202d 6d333220 |-bitfields -m32 | ���00003630 2d6d7475 6e653d67-656e6572 6963202d |-mtune=generic -| Indeed, this is a version 4 CU vs. 5. -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=1201107 http://bugzilla.opensuse.org/show_bug.cgi?id=1201107#c17 --- Comment #17 from Jan Engelhardt <jengelh@inai.de> ---
Is there any other receipe known with which the service provided by the breakpad tools (extracting source file information) could be replaced ?
With enough shell/perl/whatever, `objdump -Wi a.exe` output could be loosely parsed for DW_AT_name within DW_TAG_compile_unit(s). == CU5 == Contents of the .debug_info section: Compilation Unit @ offset 0x0: Length: 0x250a (32-bit) Version: 5 Unit Type: DW_UT_compile (1) Abbrev Offset: 0x0 Pointer Size: 4 <0><c>: Abbrev Number: 53 (DW_TAG_compile_unit) <d> DW_AT_producer : GNU C99 12.1.0 -mms-bitfields -m32 -mtune=generic -march=pentiumpro -g -O2 -std=gnu99 -fexceptions --param=ssp-buffer-size=4 <8a> DW_AT_language : 12 (ANSI C99) <8b> DW_AT_name : (indirect line string, offset: 0x3c): crt/crtexe.c <8f> DW_AT_comp_dir : (indirect line string, offset: 0x0): /home/abuild/rpmbuild/BUILD/mingw-w64-v10.0.0/mingw-w64-crt == CU4 == Contents of the .debug_info section: Compilation Unit @ offset 0x0: Length: 0x238e (32-bit) Version: 4 Abbrev Offset: 0x0 Pointer Size: 4 <0><b>: Abbrev Number: 1 (DW_TAG_compile_unit) <c> DW_AT_producer : GNU C99 10.3.0 -mms-bitfields -m32 -mtune=generic -march=pentiumpro -g -O2 -std=gnu99 -fexceptions --param=ssp-buffer-size=4 <89> DW_AT_language : 12 (ANSI C99) <8a> DW_AT_name : crt/crtexe.c <97> DW_AT_comp_dir : /home/abuild/rpmbuild/BUILD/mingw-w64-v9.0.0/mingw-w64-crt <d2> DW_AT_low_pc : 0x401000 <d6> DW_AT_high_pc : 0x4ed <da> DW_AT_stmt_list : 0x0 -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=1201107 http://bugzilla.opensuse.org/show_bug.cgi?id=1201107#c18 --- Comment #18 from Jan Engelhardt <jengelh@inai.de> --- implementation in home:jengelh:branches:windows:mingw:win32 $ rpm -qlvp mingw32-libHX-debug-4.6-0.noarch.rpm -rwxr-xr-x 1 root root 489989 Jul 22 00:52 /usr/i686-w64-mingw32/sys-root/mingw/bin/libHX-32.dll.debug drwxr-xr-x 2 root root 0 Jul 22 00:52 /usr/i686-w64-mingw32/sys-root/mingw/src drwxr-xr-x 2 root root 0 Jul 22 00:52 /usr/i686-w64-mingw32/sys-root/mingw/src/debug drwxr-xr-x 2 root root 0 Jul 22 00:52 /usr/i686-w64-mingw32/sys-root/mingw/src/debug/libHX-4.6 drwxr-xr-x 2 root root 0 Jul 22 00:52 /usr/i686-w64-mingw32/sys-root/mingw/src/debug/libHX-4.6/src -rw-r--r-- 1 root root 3940 Jul 22 00:52 /usr/i686-w64-mingw32/sys-root/mingw/src/debug/libHX-4.6/src/deque.c ... so we get source files again, but I have not tried if gdb is happy enough with that. -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=1201107 http://bugzilla.opensuse.org/show_bug.cgi?id=1201107#c19 --- Comment #19 from Ralf Habacker <ralf.habacker@freenet.de> --- (In reply to Jan Engelhardt from comment #18)
so we get source files again, but I have not tried if gdb is happy enough with that.
Thanks for this fix. I can check this with gdb. Unfortunately, gdb can't debug dll, only executables, which means you need to add a package that contains an executable that ideally depends on a dll provided by another package. Another thing is whether it is intentional (or reasonable) to add an additional dependency to the already required packages by using a perl script: Requires: coreutils Requires: findutils Requires: gawk Requires: grep Requires: mingw32-cross-binutils Requires: mingw32-cross-breakpad-tools Requires: mingw32-cross-pkgconf Requires: python3 Requires: rpm Requires: rpmlint-mini Requires: sed -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=1201107 http://bugzilla.opensuse.org/show_bug.cgi?id=1201107#c20 --- Comment #20 from Ralf Habacker <ralf.habacker@freenet.de> --- (In reply to Ralf Habacker from comment #19)
Requires: coreutils Requires: findutils Requires: gawk Requires: grep Requires: mingw32-cross-binutils Requires: mingw32-cross-breakpad-tools Requires: mingw32-cross-pkgconf Requires: python3 Requires: rpm Requires: rpmlint-mini Requires: sed
mingwxx-filesystem got updates with this requirements added. -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=1201107 http://bugzilla.opensuse.org/show_bug.cgi?id=1201107#c21 --- Comment #21 from Ralf Habacker <ralf.habacker@freenet.de> --- (In reply to Jan Engelhardt from comment #18)
implementation in home:jengelh:branches:windows:mingw:win32> so we get source files again, but I have not tried if gdb is happy enough with that.
No, it did not find that sources: Running gdb with a dbus-daemon.exe binary configured/compiled with mingw32-cmake/make with $ wine gdb --args bin/dbus-daemon.exe --session ... [GCC 12.1.0] Reading symbols from bin/dbus-daemon.exe... (gdb) b main Breakpoint 1 at 0x436350: file /home/xxx/src/dbus/bus/main.c, line 397. (gdb) r Starting program: Z:\home\xxx\src\dbus-cmake-mingw32-build\bin\dbus-daemon.exe --session Breakpoint 1, main (argc=2, argv=0xba10d0) at /home/xxx/src/dbus/bus/main.c:397 397 { (gdb) l 392 } 393 #endif /* DBUS_UNIX */ 394 395 int 396 main (int argc, char **argv) 397 { 398 DBusError error; 399 DBusString config_file; 400 DBusString address; 401 DBusString addr_fd; With 1. install mingw32-dbus-1 package 2. install mingw32-dbus-1-debug package $ cd /usr/i686-w64-mingw32/sys-root/mingw $ wine gdb --args bin/dbus-daemon.exe --session now I cannot get the source Breakpoint 1, main (argc=2, argv=0xac1118) at main.c:392 392 main.c: No such file or directory. In the past I remember that there was printed Breakpoint 1, main (argc=2, argv=0xac1118) at /home/abuild/rpmbuild/BUILD/dbus-1.12.20-xxx/bus/main.c:392." which could be substituted with set substitute-path /home/abuild/rpmbuild/BUILD src/debug to get the real source shown. -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=1201107 http://bugzilla.opensuse.org/show_bug.cgi?id=1201107#c22 --- Comment #22 from Ralf Habacker <ralf.habacker@freenet.de> --- (In reply to Ralf Habacker from comment #21)
which could be substituted with
set substitute-path /home/abuild/rpmbuild/BUILD src/debug
to get the real source shown.
This still works with gdb 12, 11 and 10 and a debug package created with the new script, so it might be an unrelated gdb problem. -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=1201107 http://bugzilla.opensuse.org/show_bug.cgi?id=1201107#c23 --- Comment #23 from Ralf Habacker <ralf.habacker@freenet.de> --- (In reply to Ralf Habacker from comment #22)
This still works with gdb 12, 11 and 10 and a debug package created with the new script, so it might be an unrelated gdb problem.
One difference I fixed at https://build.opensuse.org/package/rdiff/home:rhabacker:branches:windows:mingw:win32:debuginfofix/mingw32-filesystem?opackage=mingw32-filesystem&oproject=windows%3Amingw%3Awin32&rev=10 is that only the source files from the given package are now included. -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=1201107 http://bugzilla.opensuse.org/show_bug.cgi?id=1201107#c24 Ralf Habacker <ralf.habacker@freenet.de> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution|--- |FIXED --- Comment #24 from Ralf Habacker <ralf.habacker@freenet.de> --- Fixed with https://build.opensuse.org/package/show/windows:mingw:win64/mingw64-filesyst... and https://build.opensuse.org/package/show/windows:mingw:win32/mingw32-filesyst... -- You are receiving this mail because: You are on the CC list for the bug.
participants (1)
-
bugzilla_noreply@suse.com