From: Wolz AT helix DOT nih DOT gov (Wolz) Subject: Re: gcc & g77 trouble with library routines: "linked to missing export CYGWIN.DLL:strlwr" 11 Apr 1998 16:06:03 -0700 Message-ID: <352FA344.6B12.cygnus.gnu-win32@helix.nih.gov> References: <351CC6D3 DOT 5E47 AT helix DOT nih DOT gov> Reply-To: Wolz AT helix DOT nih DOT gov Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit To: Fergus Henderson Cc: gnu-win32 AT cygnus DOT com, mykrafone AT aol DOT com Fergus Henderson wrote: > > On 28-Mar-1998, Wolz wrote: > > I prepared the following test program to demonstrate: > > > > #testc.c > > > > #include "string.h" > > extern char * strlwr(char *); > > main () { > > char testchar[]="X"; > > strlwr(testchar); > > } > > strlwr() is a non-standard function. > Any programs that use it will not be portable. > > My guess as to why it links but won't run is that > the old (b18) cygwin.dll used to export strlwr(), > whereas cygwinb19.dll does not export it, but when > removing the function someone forgot to remove it from > the export list. > > > One solution would be to write replacement routines, where necessary. > > Right. > > But don't call the replacement strlwr(), since names starting with str[a-z]* > are reserved for use by the implementation. Call it say my_strlwr(). > > -- > Fergus Henderson | "I have always known that the pursuit > WWW: | of excellence is a lethal habit" > PGP: finger fjh AT 128 DOT 250 DOT 37 DOT 3 | -- the last words of T. S. Garp. Thanks for the hints. It turned out that moving up to B19 was the solution/fix for that problem. I had been using B18. Now the compiler, make, gdb, are running well. Now another problem has shown up, referenced elsewhere, where bash hangs up after about three mentions of an unsupported program. (By the way, in the compile, I did use the -g parameter, to prepare the program for debugging.) - For help on using this list (especially unsubscribing), send a message to "gnu-win32-request AT cygnus DOT com" with one line of text: "help".