Hi,
I'm getting link errors with libstdc++. At first I thought I must have
been missing a package, but AFAICS I have all the relevant ones. I
assumed libstdc++ would be linked in by default from a g++ command line.
I couldn't see anything similar mentioned in the archives. I assume
c++ wouldn't be broken by default for the whole distribution like this,
what have I forgotten (and out of interest, why does the 3.3.1 version
of gcc and g++ use the 3.2.3 specs)?
scarff-box ~ $ cat nolink.cc
#include <iostream>
using namespace std;
int
main(int, char**)
{
cout << "hello.";
}
scarff-box ~ $ g++ -Wall -v nolink.cc
Reading specs from /usr/local/lib/gcc-lib/i686-pc-cygwin/3.2.3/specs
Configured with: ./configure --enable-languages=objective-c
--with-system-zlib --without-included-gettext --host=i686-pc-cygwin
--target=i686-pc-cygwin --prefix=/usr/local/ --exec-prefix=/usr/local :
(reconfigured) ./configure --target=i686-pc-cygwin --prefix=/usr/local
--with-as=/usr/bin/as.exe --with-ld=/usr/bin/ld.exe
--enable-threads=win32 -enable-languages=c,c++,objc
Thread model: win32
gcc version 3.2.3
/usr/local/lib/gcc-lib/i686-pc-cygwin/3.2.3/cc1plus.exe -v
-D__GNUC__=3 -D__GNUC_MINOR__=2 -D__GNUC_PATCHLEVEL__=3
-D__GXX_ABI_VERSION=102 -D_X86_=1 -D_X86_=1 -Asystem=winnt
-D__NO_INLINE__ -D__STDC_HOSTED__=1 -Acpu=i386 -Amachine=i386 -Di386
-D__i386 -D__i386__ -D__tune_i686__ -D__tune_pentiumpro__
-D__stdcall=__attribute__((__stdcall__))
-D__cdecl=__attribute__((__cdecl__))
-D_stdcall=__attribute__((__stdcall__))
-D_cdecl=__attribute__((__cdecl__)) -D__declspec(x)=__attribute__((x))
-D__i386__ -D__i386 -D__CYGWIN32__ -D__CYGWIN__ -Dunix -D__unix__
-D__unix -isystem /usr/local/include -idirafter
/usr/local/i686-pc-cygwin/include -idirafter /usr/include -idirafter
/usr/local/i686-pc-cygwin/include/w32api -idirafter /usr/include/w32api
nolink.cc -D__GNUG__=3 -D__DEPRECATED -D__EXCEPTIONS -quiet -dumpbase
nolink.cc -Wall -version -o
/mnt/data/Profiles/scarff/LOCALS~1/Temp/ccSJf53h.s
ignoring nonexistent directory "/usr/local/i686-pc-cygwin/include"
ignoring nonexistent directory "/usr/local/i686-pc-cygwin/include/w32api"
GNU CPP version 3.2.3 (cpplib) (80386, BSD syntax)
GNU C++ version 3.2.3 (i686-pc-cygwin)
compiled by GNU C version 3.2 20020927 (prerelease).
#include "..." search starts here:
#include <...> search starts here:
/usr/local/include
/usr/local/include/c++/3.2.3
/usr/local/include/c++/3.2.3/i686-pc-cygwin
/usr/local/include/c++/3.2.3/backward
/usr/local/lib/gcc-lib/i686-pc-cygwin/3.2.3/include
/usr/include
/usr/include/w32api
End of search list.