Synopsis: STL namespaces, which file is included? Severity: medium Priority: medium Category: c++ c Release: g++-3.3 (GCC) 3.3.6 (Debian 1:3.3.6-1) Environment: Linux Charon 2.6.10 i686 GNU/Linux Architecture: i686 Hi, I'm sorry to have to repeat a question which was posed in January 2004 by Piotr Kozieradzki in general. Forgive me if I'm wrong here, but I think my question is related directly to gcc. My concrete problem is MUTE, a C++ wxWindows application. Of course I'd ask the author specific questions, but however, the interesting thing is I have both gcc-2.95 and gcc-3.3 installed, and there are two versions of stl_alloc.h: $ dpkg -S stl_alloc.h libstdc++2.10-dev: /usr/include/g++-3/stl_alloc.h stl-manual: /usr/share/doc/stl-manual/html/stl_alloc.h libstdc++5-3.3-dev: /usr/include/c++/3.3/bits/stl_alloc.h I thought that the one of libstdc++2.10-dev is old (for gcc-2.95, even if the directory is called g++-3) and the one of libstdc++5-3.3-dev is more recent. However, under the lots of errors the compilation of MUTE gives me I find --- snip GuiApp.o(.text+0x21): In function `__malloc_alloc_template<0>::deallocate(void * , unsigned int)': /usr/lib/gcc-lib/i386-linux/2.95.4/../../../../include/g ++-3/stl_alloc.h: undefined reference to `wxAppBase::CheckBuildOptions(wxBuildOptions const &)' GuiApp.o(.text +0x2e):/usr/lib/gcc-lib/i386-linux/2.95.4/../../../../include/g++- 3/stl_alloc.h: undefined reference to `__builtin_new' GuiApp.o(.text +0x5a):/usr/lib/gcc-lib/i386-linux/2.95.4/../../../../include/g++- 3/stl_alloc.h: undefined reference to `__builtin_delete' GuiApp.o(.text +0x71):/usr/lib/gcc-lib/i386-linux/2.95.4/../../../../include/g++- 3/stl_alloc.h: undefined reference to `__throw' GuiApp.o(.text +0x8b):/usr/lib/gcc-lib/i386-linux/2.95.4/../../../../include/g++- 3/stl_alloc.h: undefined reference to `__builtin_delete' GuiApp.o(.text +0xa1):/usr/lib/gcc-lib/i386-linux/2.95.4/../../../../include/g++- 3/stl_alloc.h: undefined reference to `__throw' GuiApp.o(.text +0xa8):/usr/lib/gcc-lib/i386-linux/2.95.4/../../../../include/g++- 3/stl_alloc.h: undefined reference to `terminate(void)' --- snap So the old stl_alloc.h is giving errors. Apparently, MUTE isn't calling that file directly (a recursive grep found nothing). Has anyone an idea how to say g++-3.3 that he should use the files of libstdc++5 without uninstalling libstdc++2.10 (and gcc-2.95) ? Best wishes to everybody, Viktor.
Attachment:
signature.asc
Description: This is a digitally signed message part