Linker errors with gcc3.2-1 and cygwin1.13-2

Eric Blake ebb9@email.byu.edu
Wed Oct 16 23:50:00 GMT 2002


I had been using the experimental gcc 3.2-1, but now that it is no 
longer experimental, I deleted and reinstalled it at the same time I 
upgraded to cygwin 1.13-2.  I also made sure I have mingw-runtime 2.2-1. 
Now I am having problems with g++ and things like wcslen.  Does anyone 
see this, or know what the solution might be?

I'm on a Win98 box.  I also verified that this sequence of commands 
works for a Linux version of g++ 3.2, and that the C compiler gcc does 
not have this problem.  It is only g++ that is having problems with 
<wchar.h> or <cwchar>.

$ cat Blah.cc
#include <wchar.h>
#include <stdio.h>

int main(int argc, char**argv)
{
     printf("wcslen: %d\n", wcslen(L"abcd"));
     return 0;
}
$ gcc -x c -o Blah Blah.cc
$ g++ -o Blah Blah.cc
/cygdrive/c/windows/temp/ccDjTSsl.o(.text+0x3c):Blah.cc: undefined 
reference to `wcslen(wchar_t const*)'
collect2: ld returned 1 exit status
$ cat Blah1.cc
#include <cwchar>
#include <stdio.h>

int main(int argc, char**argv)
{
     printf("wcslen: %d\n", wcslen(L"abcd"));
     return 0;
}
$ g++ -o Blah Blah1.cc
Blah1.cc: In function `int main(int, char**)':
Blah1.cc:6: `wcslen' undeclared (first use this function)
Blah1.cc:6: (Each undeclared identifier is reported only once for each 
function it appears in.)
$ cat Blah2.cc
#include <wchar.h>
#include <cwchar>
#include <stdio.h>

int main(int argc, char**argv)
{
     printf("wcslen: %d\n", wcslen(L"abcd"));
     return 0;
}
$ g++ -o Blah Blah2.cc
In file included from Blah2.cc:2:
/usr/include/c++/3.2/cwchar:65: conflicting types for `typedef struct 
mbstate_t
    mbstate_t'
/usr/include/wchar.h:36: previous declaration as `typedef struct _mbstate_t
    mbstate_t'

--
This signature intentionally left boring.

Eric Blake             ebb9@email.byu.edu
   BYU student, free software programmer


--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Bug reporting:         http://cygwin.com/bugs.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/



More information about the Cygwin mailing list