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
GNU gdb (GDB) (Cygwin 8.2.1-1) 8.2.1
Copyright (C) 2018 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Type "show copying" and "show warranty" for details.
This GDB was configured as "x86_64-pc-cygwin".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
    <http://www.gnu.org/software/gdb/documentation/>.

For help, type "help".
Type "apropos word" to search for commands related to "word"...
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`
GNU gdb (GDB) (Cygwin 8.2.1-1) 8.2.1
Copyright (C) 2018 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Type "show copying" and "show warranty" for details.
This GDB was configured as "x86_64-pc-cygwin".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
    <http://www.gnu.org/software/gdb/documentation/>.

For help, type "help".
Type "apropos word" to search for commands related to "word"...
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
(gdb)

-- 
Problem reports:      https://cygwin.com/problems.html
FAQ:                  https://cygwin.com/faq/
Documentation:        https://cygwin.com/docs.html
Unsubscribe info:     https://cygwin.com/ml/#unsubscribe-simple

Reply via email to