Date: Fri, 2 Jun 2000 10:00:55 +0200 (WET) From: Andris Pavenis To: Nimrod Abing cc: djgpp AT delorie DOT com Subject: Re: your mail In-Reply-To: <20000602023558.50934.qmail@hotmail.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Reply-To: djgpp AT delorie DOT com Errors-To: nobody AT delorie DOT com X-Mailing-List: djgpp AT delorie DOT com X-Unsubscribes-To: listserv AT delorie DOT com Precedence: bulk On Fri, 2 Jun 2000, Nimrod Abing wrote: > Hello. I have a question, and it doesn't seem to be in the DJGPP FAQ > somewhere. It's about namespaces in C++. Why is it that when I use the > gcc --honor-std option, the linker complains of unable to resolve an > external called ``std::terminate()''. The standard ``hello world'' > program compiles without problems, but I am making this program which > uses the STL included with gpp2952b.zip. Whenever I build it using the > ``--honor-std'' switch, the linker complains about unresolved externals. > But when I remove the ``--honor-std'' switch, the program compiles and > links without any errors. What am I doing wrong? Is it a problem with > the STL library archive? You cannot use --honor-std without rebuilding gcc with this option. About terminate(): it's in libgcc.a and it is built without --honor-std. To get std::terminate(void) instead libcc.a should be built with --honor-std. More likely it will be done when --honor-std will be default in soome future version of gcc (of course You are free to rebuild gcc as You like...) Andris