gdb symbolic link bug
Sat Nov 20 00:55:20 GMT 2021
On 2021-11-19 08:08, Carter, Mark Andrew (Andy) via Cygwin wrote:
> Gdb will not run an executable when it is a symbolic link in the post
> Cygwin release 3.1.5 form. As seen below I am currently running
> Cygwin 3.1.7. I have confirmed this is due to the change of the "ln
> -s" implementation. Links created by Cygwin 2.8 and 3.1.0 work with
> this gdb version, and links created with Cygwin 3.1.7 do not work
> with gdb from Cygwin release 2.8. The following capture demonstrates
> the issue. Note the workaround using readlink!
> $ uname -a
> CYGWIN_NT-10.0 P1163-8573-10 3.1.7(0.340/5/3) 2020-08-22 17:48 x86_64 Cygwin
> $ ls -l vital.exe
> lrwxrwxrwx 1 p00002737 Domain Users 18 Oct 19 06:59 vital.exe -> ../vital/vital.exe
> $ gdb vital.exe
> Reading symbols from vital.exe...done.
> (gdb) r
> Starting program: /home/p00002737/vital/tap/vital.exe
> Error creating process /home/p00002737/vital/tap/vital.exe, (error 1920).
> (gdb) quit
> $ gdb `readlink vital.exe`
> Reading symbols from ../vital/vital.exe...done.
> (gdb) r
> Starting program: /home/p00002737/vital/vital/vital.exe
> [New Thread 54032.0xc1e8]
> [New Thread 54032.0x10e4]
> [New Thread 54032.0xdee8]
> [New Thread 54032.0xcd20]
> [New Thread 54032.0x8e60]
> [New Thread 54032.0xc378]
> Thread 6 received signal SIGINT, Interrupt.
> [Switching to Thread 54032.0xc378]
> 0x00007fff3b4b5a03 in TlsGetValue () from /cygdrive/c/WINDOWS/System32/KERNELBASE.dll
Cygwin is a rolling release system where only current releases are
supported: Cygwin 3.3.2 and gdb 10.2.
Please update Cygwin and gdb to currently supported releases (and if
possible rebuild the exe with current compilers and libraries) to see if
the bug has been fixed or can still be reproduced.
Take care. Thanks, Brian Inglis, Calgary, Alberta, Canada
This email may be disturbing to some readers as it contains
too much technical detail. Reader discretion is advised.
[Data in binary units and prefixes, physical quantities in SI.]
More information about the Cygwin