From: "Andrew Crabtree" Newsgroups: comp.os.msdos.djgpp Subject: Re: undefined reference to terminate(void); Date: Mon, 9 Feb 1998 15:59:32 -0800 Organization: Hewlett Packard Lines: 22 Message-ID: <6bo59b$khq$1@rosenews.rose.hp.com> References: <34DF8862 DOT 2B01CF5B AT primenet DOT com> NNTP-Posting-Host: ros51675cra.rose.hp.com Mime-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit To: djgpp AT delorie DOT com DJ-Gateway: from newsgroup comp.os.msdos.djgpp Precedence: bulk Mike McLean wrote in message <34DF8862 DOT 2B01CF5B AT primenet DOT com>... >What does undefined reference to terminate(void); mean? It means that there is a call to an external function, but the linker is unable to find the definition in any of the .o or .a files you have told it to look in. > I am using pgcc 1.01 if this helps. Dunno. On my machine it appears that terminate is defined in libgcc.a ... C:\djgpp\lib>nm libgcc.a | grep "T _terminate" 00000000 T _terminate__Fv Perhaps your link line doesn't include gcc? This would only occur I think if you were manually calling ld, instead of having gcc do it, as gcc always links in -lgcc -lc -lgcc... HTH Andy