Hello,
when compiling binutils-gdb I got stuck with an error concerning the strsignal
function.
This also occurs when trying to compile the insight gdb-frontend on cygwin64
that I tried to build.
* platform:
o cygwin 64bit on Win-10
o gcc (GCC) 11.2.0, g++ (GCC) 11.2.0
* commands submitted:
o git clone --recursive git://sourceware.org/git/binutils-gdb.git
o autoconf
o ./configure
o make
* Error message:
o event-top.c: In function ‘void handle_fatal_signal(int)’:
event-top.c:893:18: error: ‘strsignal’ was not declared in this
scope; did you mean ‘strsigno’?
893 | sig_write (strsignal (sig));
* comment:
o strsignal() is declared in string.h. However, including it
doesn't work.
Then I inspected string.h on cygwin64 in /usr/include and found
this:
o #ifndef DEFS_H /* Kludge to work around problem compiling in
gdb */
char *strsignal (int __signo);
#endif
o suggestion: undefining DEFS_H might be risky -> to be added at
line 55:
+ #ifndef DEFS_H
# include <string.h> /* for strsignal on
cygwin */
#else
char *strsignal (int __signo); /* see
/usr/include/string.h on cygwin */
#endif
o then it compiles, however a library is missed now:
+ x86_64-pc-cygwin/bin/ld:
event-top.o:.../insight/bundle/gdb/event-top.c:899:
undefined reference to `strsignal(int)'
collect2: error: ld returned 1 exit status
Hope this helps somehow.
Kind regards,
Claudius
--
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