This is the mail archive of the
cygwin@cygwin.com
mailing list for the Cygwin project.
Re: Available for test: gcc-3.1.1-2 gcc2-2.95.3-8
- From: Charles Wilson <cwilson at ece dot gatech dot edu>
- To: cygwin at cygwin dot com
- Date: Thu, 11 Jul 2002 03:21:41 -0400
- Subject: Re: Available for test: gcc-3.1.1-2 gcc2-2.95.3-8
- References: <20020711044304.GA3292@redhat.com>
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
Attachment:
gcc-tests.tar.bz2
Description: Binary data
--
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/