Available for test: gcc-3.1.1-2 gcc2-2.95.3-8

Charles Wilson cwilson@ece.gatech.edu
Thu Jul 11 03:47:00 GMT 2002


Christopher Faylor wrote:

> Fixes in gcc2:
> 
>   -mno-cygwin works with c++ now?
> 
>   HOWEVER, I've fixed this problem by creating a separate g++-3
>   directory in /usr/include.  If you have a symbolic link there or
>   if you have modified files in that directory they will be wiped
>   out.  Or, er, I actually don't know what will happen to the symbolic
>   link.  It is probably a good idea to eliminate it before installing
>   the package.
> 
>   (I'm taking bets now on when we'll see the first bug report as a
>   result of this change.)


Okay, there's just one thing I forgot to mention last time: there still 
is no mingw libstdc++(-2).a for gcc-2.95.3-8 (of course, 2.95.3-5 didn't 
have one either, so this is no big deal.  However, since you're 
providing the mingw/g++-3 headers ...

Anyway, see below.

The attached test "suite" provides stripped down versions of the C, C++, 
and Fortran dllhelpers examples, plus several -mno-cygwin invocation 
scripts.

I tested thus:
   unpack
   cd gcc-tests/c
   unset CC
   export CC
   make
   make clean

   export CC=mgcc
   make
   make clean

   export CC=gcc-2
   make
   make clean

   export CC=mgcc-2
   make
   make clean

Then, same thing in the cxx directory, using CXX=[],mg++,g++-2,mg++-2.
Ditto in f77 dir, using FC=[],mg77,g77-2,mg77-2

Results:


3.1.1:

gcc works
gcc -mno-cygwin works
g++ works
g++ -mno-cygwin works
g77 works
g77 -mno-cygwin works

2.95.3-8:

/usr/lib/libstdc++.a.2.1.0 ??  what is this file?

gcc-2 works
gcc-2 -mno-cygwin works

g++-2 works
g++-2 -mno-cygwin links against the /usr/lib/gcc-lib/i686-pc-cygwin/2.95.3-8/libstdc++-2.a
  (oh yeah -- there is no mingw libstdc++ for this release.
  I copied my mingw libstdc++.a to libstdc++-2.a, and then got *different* errors)
  see below.  Shouldn't be a mangling issue; it was build with 2.95.3-5.

g77-2 breaks:
  /usr/lib/libcygwin.a(libcmain.o)(.text+0x81): undefined reference to `WinMain@16'
g77-2 -mno-cygwin breaks:
  /usr/lib/mingw/libmingw32.a(main.o)(.text+0x8d):main.c: undefined reference to `WinMain@16'

Note the g++-2 IS finding my custom libstdc++-2.a (which is a 
copy of a libstdc++.a that worked just fine with gcc-2.95.3-5).

mg++-2 -o usedll.exe -g   usedll.o -L./ -lcxxdll 
usedll.o: In function `main':
/usr/local/src/dllhelpers/dllhelpers-0.4.1/cxx/usedll.cc:21: undefined reference to `endl(ostream &)'
/usr/local/src/dllhelpers/dllhelpers-0.4.1/cxx/usedll.cc:21: undefined reference to `endl(ostream &)'
/usr/local/src/dllhelpers/dllhelpers-0.4.1/cxx/usedll.cc:21: undefined reference to `endl(ostream &)'
/usr/local/src/dllhelpers/dllhelpers-0.4.1/cxx/usedll.cc:21: undefined reference to `endl(ostream &)'
/usr/local/src/dllhelpers/dllhelpers-0.4.1/cxx/usedll.cc:21: undefined reference to `endl(ostream &)'
usedll.o:/usr/local/src/dllhelpers/dllhelpers-0.4.1/cxx/usedll.cc:21: more undefined references to `endl(ostream &)' follow
usedll.o: In function `main':
/usr/local/src/dllhelpers/dllhelpers-0.4.1/cxx/usedll.cc:21: undefined reference to `cout'
/usr/local/src/dllhelpers/dllhelpers-0.4.1/cxx/usedll.cc:21: undefined reference to `ostream::operator<<(char const *)'
/usr/local/src/dllhelpers/dllhelpers-0.4.1/cxx/usedll.cc:21: undefined reference to `ostream::operator<<(int)'
/usr/local/src/dllhelpers/dllhelpers-0.4.1/cxx/usedll.cc:21: undefined reference to `ostream::operator<<(char const *)'
/usr/local/src/dllhelpers/dllhelpers-0.4.1/cxx/usedll.cc:21: undefined reference to `ostream::operator<<(char const *)'
/usr/local/src/dllhelpers/dllhelpers-0.4.1/cxx/usedll.cc:21: undefined reference to `ostream::operator<<(int)'
/usr/local/src/dllhelpers/dllhelpers-0.4.1/cxx/usedll.cc:21: undefined reference to `ostream::operator<<(char const *)'
/usr/local/src/dllhelpers/dllhelpers-0.4.1/cxx/usedll.cc:21: undefined reference to `ostream::operator<<(int)'
/usr/local/src/dllhelpers/dllhelpers-0.4.1/cxx/usedll.cc:21: undefined reference to `ostream::operator<<(char const *)'
/usr/local/src/dllhelpers/dllhelpers-0.4.1/cxx/usedll.cc:21: undefined reference to `ostream::operator<<(int)'
/usr/local/src/dllhelpers/dllhelpers-0.4.1/cxx/usedll.cc:21: undefined reference to `ostream::operator<<(char const *)'
/usr/local/src/dllhelpers/dllhelpers-0.4.1/cxx/usedll.cc:21: undefined reference to `ostream::operator<<(char const *)'
/usr/local/src/dllhelpers/dllhelpers-0.4.1/cxx/usedll.cc:21: undefined reference to `ostream::operator<<(int)'
/usr/local/src/dllhelpers/dllhelpers-0.4.1/cxx/usedll.cc:21: undefined reference to `ostream::operator<<(char const *)'
/usr/local/src/dllhelpers/dllhelpers-0.4.1/cxx/usedll.cc:21: undefined reference to `ostream::operator<<(int)'
/usr/local/src/dllhelpers/dllhelpers-0.4.1/cxx/usedll.cc:21: undefined reference to `ostream::operator<<(char const *)'
/usr/local/src/dllhelpers/dllhelpers-0.4.1/cxx/usedll.cc:21: undefined reference to `ostream::operator<<(int)'
/usr/local/src/dllhelpers/dllhelpers-0.4.1/cxx/usedll.cc:29: undefined reference to `endl(ostream &)'
/usr/local/src/dllhelpers/dllhelpers-0.4.1/cxx/usedll.cc:29: undefined reference to `endl(ostream &)'
/usr/local/src/dllhelpers/dllhelpers-0.4.1/cxx/usedll.cc:29: undefined reference to `endl(ostream &)'
/usr/local/src/dllhelpers/dllhelpers-0.4.1/cxx/usedll.cc:29: undefined reference to `endl(ostream &)'
/usr/local/src/dllhelpers/dllhelpers-0.4.1/cxx/usedll.cc:29: undefined reference to `cout'
/usr/local/src/dllhelpers/dllhelpers-0.4.1/cxx/usedll.cc:29: undefined reference to `ostream::operator<<(char const *)'
/usr/local/src/dllhelpers/dllhelpers-0.4.1/cxx/usedll.cc:29: undefined reference to `ostream::operator<<(char const *)'
/usr/local/src/dllhelpers/dllhelpers-0.4.1/cxx/usedll.cc:29: undefined reference to `ostream::operator<<(int)'
/usr/local/src/dllhelpers/dllhelpers-0.4.1/cxx/usedll.cc:29: undefined reference to `ostream::operator<<(char const *)'
/usr/local/src/dllhelpers/dllhelpers-0.4.1/cxx/usedll.cc:29: undefined reference to `ostream::operator<<(int)'
/usr/local/src/dllhelpers/dllhelpers-0.4.1/cxx/usedll.cc:29: undefined reference to `ostream::operator<<(char const *)'
/usr/local/src/dllhelpers/dllhelpers-0.4.1/cxx/usedll.cc:29: undefined reference to `ostream::operator<<(int)'
Info: resolving DllClass::instances   by linking to __imp___8DllClass$instances (auto-import)
Info: resolving _global_dllclass2 by linking to __imp__global_dllclass2 (auto-import)
Info: resolving _global_dllclass1 by linking to __imp__global_dllclass1 (auto-import)
Info: resolving _global_int_variable by linking to __imp__global_int_variable (auto-import)
collect2: ld returned 1 exit status
make: *** [usedll.exe] Error 1


-------------- next part --------------
A non-text attachment was scrubbed...
Name: gcc-tests.tar.bz2
Type: application/octet-stream
Size: 3708 bytes
Desc: not available
URL: <http://cygwin.com/pipermail/cygwin/attachments/20020711/625eb1b1/attachment.obj>
-------------- next part --------------
--
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