Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com Delivered-To: mailing list cygwin AT cygwin DOT com From: "Dave Korn" To: Subject: RE: ./configure Date: Wed, 16 Mar 2005 16:46:07 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit In-Reply-To: Message-ID: X-OriginalArrivalTime: 16 Mar 2005 16:45:59.0937 (UTC) FILETIME=[A2077710:01C52A47] ----Original Message---- >From: Donald >Sent: 16 March 2005 15:44 > make[1]: Entering directory `/usr/src/mudtelnet-1.03-1/src/telnet' > gcc -O2 -Wall -W -Wpointer-arith -Wbad-function-cast -Wcast-qual -Wstrict- > prototypes -Wmissing-prototypes -Wmissing-declarations -Wnested-externs - > Winline -DUSE_TERMIO -DKLUDGELINEMODE -I../ ../mudtelnet/muddb.c -c > ../mudtelnet/muddb.c:184:25: bits/signum.h: No such file or directory > ../mudtelnet/muddb.c: In function `mudscript_stop': > ../mudtelnet/muddb.c:1051: warning: implicit declaration of function > `waitpid' ../mudtelnet/muddb.c:1051: error: `WNOHANG' undeclared (first > use in this function) > ../mudtelnet/muddb.c:1051: error: (Each undeclared identifier is reported > only once > ../mudtelnet/muddb.c:1051: error: for each function it appears in.) > make[1]: *** [muddb.o] Error 1 > make[1]: Leaving directory `/usr/src/mudtelnet-1.03-1/src/telnet' > make: *** [telnet/mudtelnet] Error 2 > Replace #include with #include at the top of that file. Then you're going to run into a link error later, because the source-code in the src/telnet subdir is not cygwin compatible: ------------------------------------------------ dk AT mace /test/mudtelnet/mudtelnet-1.03-1/src> make cd telnet ; make make[1]: Entering directory `/test/mudtelnet/mudtelnet-1.03-1/src/telnet' gcc authenc.o commands.o main.o network.o ring.o sys_bsd.o telnet.o terminal.o tn3270.o utilities.o genget.o muddb.o mudproc.o -lncurses -o mudtelnet sys_bsd.o(.text+0x4ea):sys_bsd.c: undefined reference to `_sigblock' sys_bsd.o(.text+0x4f7):sys_bsd.c: undefined reference to `_sigsetmask' Info: resolving _optarg by linking to __imp__optarg (auto-import) Info: resolving _optind by linking to __imp__optind (auto-import) collect2: ld returned 1 exit status make[1]: *** [mudtelnet] Error 1 make[1]: Leaving directory `/test/mudtelnet/mudtelnet-1.03-1/src/telnet' make: *** [telnet/mudtelnet] Error 2 dk AT mace /test/mudtelnet/mudtelnet-1.03-1/src> ------------------------------------------------ which is because of this code in src/telnet/sys_bsd.c: ------------------------------------------------ #ifdef SIGTSTP (void) signal(SIGTSTP, SIG_DFL); # ifndef SOLARIS (void) sigsetmask(sigblock(0) & ~(1<<(SIGTSTP-1))); # else SOLARIS (void) sigrelse(SIGTSTP); # endif SOLARIS #endif /* SIGTSTP */ ------------------------------------------------ It uses the sigblock and sigsetmask functions, which are not implemented in cygwin (and indeed aren't required by the POSIX/SuSv6). That's strange. The binaries they offer on the website don't reference those functions. Maybe SIGTSTP didn't used to be defined in the cygwin environment when they compiled it, but has since been defined. I added the following line: #undef SIGTSTP just after this line: #include "telnet_locl.h" at the top of that file, and got what appeared to be a basically working .exe, although the final copy in the makefile failed and I had to fish it out of the telnet subdir. cheers, DaveK -- Can't think of a witty .sigline today.... -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Problem reports: http://cygwin.com/problems.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/