Basic Question on using libstdc++-v3

Benjamin Kosnik bkoz@cygnus.com
Mon Oct 11 10:50:00 GMT 1999


> But I still get the same error messsages as before.  I used -v -H this time.   I 
> I am attaching the following files (1) toy program (2) compile error messages
> including command line (3) listing of the header file where the error occurs

Here's what you should see for -v -H, something like this:

Reading specs from
/mnt/hd/bliss/H-x86-gcc-2.95.1/lib/gcc-lib/i686-pc-linux-gnu/2.95.1/specs
gcc version 2.95.1 19990816 (release)
 /mnt/hd/bliss/H-x86-gcc-2.95.1/lib/gcc-lib/i686-pc-linux-gnu/2.95.1/cpp
-lang-c++ -v -I../std -I.. -I../stl -I../libio -I../../bld-x86-libstdc++
-D__GNUC__=2 -D__GNUG__=2 -D__GNUC_MINOR__=95 -D__cplusplus -D__ELF__
-Dunix -D__i386__ -Dlinux -D__ELF__ -D__unix__ -D__i386__ -D__linux__
-D__unix -D__linux -Asystem(posix) -D__EXCEPTIONS -g -H -Acpu(i386)
-Amachine(i386) -Di386 -D__i386 -D__i386__ -Di686 -Dpentiumpro -D__i686
-D__i686__ -D__pentiumpro -D__pentiumpro__ list.cc /tmp/cc4mHoPf.ii
GNU CPP version 2.95.1 19990816 (release) (i386 Linux/ELF)
#include "..." search starts here:
#include <...> search starts here:
 ../std
 ..
 ../stl
 ../libio
 ../../bld-x86-libstdc++

/mnt/hd/bliss/H-x86-gcc-2.95.1/lib/gcc-lib/i686-pc-linux-gnu/2.95.1/../../../../include/g++-3

/mnt/hd/bliss/H-x86-gcc-2.95.1/lib/gcc-lib/i686-pc-linux-gnu/2.95.1/../../../../i686-pc-linux-gnu/include

/mnt/hd/bliss/H-x86-gcc-2.95.1/lib/gcc-lib/i686-pc-linux-gnu/2.95.1/include
 /usr/include
End of search list.
The following default directories have been omitted from the search path:
 /usr/local/include
End of omitted list.
../stl/ext/hash_map
 ../stl/ext/stl_hashtable.h
  ../stl/bits/stl_algobase.h
   ../stl/bits/stl_config.h
    /usr/include/_G_config.h
     /usr/include/bits/types.h
      /usr/include/features.h
       /usr/include/sys/cdefs.h
       /usr/include/gnu/stubs.h

/mnt/hd/bliss/H-x86-gcc-2.95.1/lib/gcc-lib/i686-pc-linux-gnu/2.95.1/include/stddef.h

/mnt/hd/bliss/H-x86-gcc-2.95.1/lib/gcc-lib/i686-pc-linux-gnu/2.95.1/include/stddef.h
   ../stl/bits/stl_relops.h
   ../stl/bits/stl_pair.h
   ../stl/bits/type_traits.h
   ../bits/std_cstring.h
    /usr/include/string.h

/mnt/hd/bliss/H-x86-gcc-2.95.1/lib/gcc-lib/i686-pc-linux-gnu/2.95.1/include/stddef.h
   ../bits/std_climits.h

/mnt/hd/bliss/H-x86-gcc-2.95.1/lib/gcc-lib/i686-pc-linux-gnu/2.95.1/include/limits.h

/mnt/hd/bliss/H-x86-gcc-2.95.1/lib/gcc-lib/i686-pc-linux-gnu/2.95.1/include/syslimits.h

/mnt/hd/bliss/H-x86-gcc-2.95.1/lib/gcc-lib/i686-pc-linux-gnu/2.95.1/include/limits.h
       /usr/include/limits.h
        /usr/include/bits/posix1_lim.h
         /usr/include/bits/local_lim.h
          /usr/include/linux/limits.h
        /usr/include/bits/posix2_lim.h
   ../bits/std_cstdlib.h
    /usr/include/stdlib.h

/mnt/hd/bliss/H-x86-gcc-2.95.1/lib/gcc-lib/i686-pc-linux-gnu/2.95.1/include/stddef.h
     /usr/include/sys/types.h
      /usr/include/time.h

/mnt/hd/bliss/H-x86-gcc-2.95.1/lib/gcc-lib/i686-pc-linux-gnu/2.95.1/include/stddef.h
      /usr/include/endian.h
       /usr/include/bits/endian.h
      /usr/include/sys/select.h
       /usr/include/bits/select.h
       /usr/include/bits/sigset.h
       /usr/include/time.h
      /usr/include/sys/sysmacros.h
     /usr/include/alloca.h

/mnt/hd/bliss/H-x86-gcc-2.95.1/lib/gcc-lib/i686-pc-linux-gnu/2.95.1/include/stddef.h
   ../bits/std_cstddef.h

/mnt/hd/bliss/H-x86-gcc-2.95.1/lib/gcc-lib/i686-pc-linux-gnu/2.95.1/include/stddef.h
   ../bits/std_new.h
    ../../bld-x86-libstdc++/bits/c++config.h

/mnt/hd/bliss/H-x86-gcc-2.95.1/lib/gcc-lib/i686-pc-linux-gnu/2.95.1/include/new

/mnt/hd/bliss/H-x86-gcc-2.95.1/lib/gcc-lib/i686-pc-linux-gnu/2.95.1/include/stddef.h
     ../std/exception
      ../bits/std_exception.h

/mnt/hd/bliss/H-x86-gcc-2.95.1/lib/gcc-lib/i686-pc-linux-gnu/2.95.1/include/exception
   ../bits/std_iosfwd.h
    ../../bld-x86-libstdc++/bits/c++config.h
    ../bits/std_cwchar.h
     ../../bld-x86-libstdc++/bits/c++config.h
     /usr/include/wchar.h
      /usr/include/stdio.h

/mnt/hd/bliss/H-x86-gcc-2.95.1/lib/gcc-lib/i686-pc-linux-gnu/2.95.1/include/stddef.h
   ../stl/bits/stl_iterator_base.h
   ../stl/bits/stl_iterator.h
  ../stl/bits/stl_alloc.h
   ../bits/std_cassert.h
    /usr/include/assert.h
   ../stl/bits/stl_threads.h
    /usr/include/pthread.h
     /usr/include/sched.h
      /usr/include/time.h
      /usr/include/bits/sched.h
     /usr/include/time.h

/mnt/hd/bliss/H-x86-gcc-2.95.1/lib/gcc-lib/i686-pc-linux-gnu/2.95.1/include/stddef.h
      /usr/include/bits/time.h
     /usr/include/signal.h
      /usr/include/bits/sigset.h
     /usr/include/bits/pthreadtypes.h
      /usr/include/bits/sched.h
     /usr/include/bits/sigthread.h
  ../stl/bits/stl_construct.h
  ../stl/bits/stl_tempbuf.h
  ../stl/bits/stl_algo.h
   ../stl/bits/stl_heap.h
  ../stl/bits/stl_uninitialized.h
  ../stl/bits/stl_function.h
  ../stl/bits/stl_vector.h
  ../stl/ext/stl_hash_fun.h
../std/iostream
 ../bits/std_iostream.h
  ../../bld-x86-libstdc++/bits/c++config.h
  ../bits/std_ostream.h
   ../bits/std_ios.h
    ../libio/libio.h

/mnt/hd/bliss/H-x86-gcc-2.95.1/lib/gcc-lib/i686-pc-linux-gnu/2.95.1/include/stdarg.h
    ../bits/char_traits.h
     ../bits/fpos.h
    ../stl/bits/stl_string_fwd.h
    ../bits/std_cstdio.h
     /usr/include/stdio.h

/mnt/hd/bliss/H-x86-gcc-2.95.1/lib/gcc-lib/i686-pc-linux-gnu/2.95.1/include/stddef.h

/mnt/hd/bliss/H-x86-gcc-2.95.1/lib/gcc-lib/i686-pc-linux-gnu/2.95.1/include/stdarg.h
      /usr/include/bits/stdio_lim.h
    ../bits/localefwd.h
     ../../bld-x86-libstdc++/bits/c++config.h
     ../bits/std_climits.h

/mnt/hd/bliss/H-x86-gcc-2.95.1/lib/gcc-lib/i686-pc-linux-gnu/2.95.1/include/limits.h
     ../bits/std_string.h
      ../../bld-x86-libstdc++/bits/c++config.h
      ../stl/bits/std_iterator.h
      ../bits/basic_string.h
      ../stl/bits/std_algorithm.h
      ../bits/string.tcc
     ../bits/std_cctype.h
      /usr/include/ctype.h
    ../bits/ios_base.h
    ../bits/std_streambuf.h
     ../../bld-x86-libstdc++/bits/c++config.h
     ../bits/streambuf.tcc
    ../bits/basic_ios.h
   ../bits/sbuf_iter.h
   ../bits/ostream.tcc
    ../bits/std_locale.h
     ../bits/locale_facets.h
      ../bits/std_ctime.h
      ../bits/std_typeinfo.h
       ../../bld-x86-libstdc++/bits/c++config.h

/mnt/hd/bliss/H-x86-gcc-2.95.1/lib/gcc-lib/i686-pc-linux-gnu/2.95.1/include/typeinfo
  ../bits/std_istream.h
   ../../bld-x86-libstdc++/bits/std_limits.h
    ../../bld-x86-libstdc++/bits/c++config.h
    ../bits/std_cfloat.h

/mnt/hd/bliss/H-x86-gcc-2.95.1/lib/gcc-lib/i686-pc-linux-gnu/2.95.1/include/float.h
   ../bits/istream.tcc

/mnt/hd/bliss/H-x86-gcc-2.95.1/lib/gcc-lib/i686-pc-linux-gnu/2.95.1/cc1plus
/tmp/cc4mHoPf.ii -quiet -dumpbase list.cc -g -version -o /tmp/cc7IBBeo.s
GNU C++ version 2.95.1 19990816 (release) (i686-pc-linux-gnu) compiled by
GNU C version 2.95.1 19990816 (release).
 as -V -Qy -o /tmp/ccul25yR.o /tmp/cc7IBBeo.s
GNU assembler version 2.9.1 (i386-redhat-linux), using BFD version
2.9.1.0.23

/mnt/hd/bliss/H-x86-gcc-2.95.1/lib/gcc-lib/i686-pc-linux-gnu/2.95.1/collect2
-m elf_i386 -static /usr/lib/crt1.o /usr/lib/crti.o
/mnt/hd/bliss/H-x86-gcc-2.95.1/lib/gcc-lib/i686-pc-linux-gnu/2.95.1/crtbegin.o
-L/mnt/hd/bliss/bld-x86-libstdc++/src/.libs
-L/mnt/hd/bliss/H-x86-gcc-2.95.1/lib/gcc-lib/i686-pc-linux-gnu/2.95.1
-L/mnt/hd/bliss/H-x86-gcc-2.95.1/lib /tmp/ccul25yR.o -lstdc++ -lm -lgcc
-lc -lgcc
/mnt/hd/bliss/H-x86-gcc-2.95.1/lib/gcc-lib/i686-pc-linux-gnu/2.95.1/crtend.o
/usr/lib/crtn.o




>  Is it possible that this hash_map should in fact be hash_map.h and there
>  should be another file hash_map which includes this hash_map.h after defining
>  the macros?

I can compile your test program with gcc-2.95.1 and a correctly-installed
version of the CVS libstdc++, with your exact compile line. Thus, I'm
pretty sure this is an installation problem.

-benjamin



More information about the Libstdc++ mailing list