- To: gcc-help@xxxxxxxxxxx
- Subject: How do I add missing stdc functions to libstdc++-v3?
- From: Vaugha Brewchuk <vaugha_brewchuk@xxxxxxxx>
- Date: Tue, 6 Mar 2012 15:04:30 -0500
- Comment: DKIM? See http://www.dkim.org
- Comment: DomainKeys? See http://antispam.yahoo.com/domainkeys
- Dkim-signature: v=1; a=rsa-sha1; c=relaxed/relaxed; d=gcc.gnu.org; s=default; x=1331669327; h=Comment: DomainKey-Signature:Received:Received:Received:Received:Received: Received:Received:Subject:Mime-Version:Content-Type:From: Resent-From:Date:Content-Transfer-Encoding:Resent-Date:Resent-To: Message-Id:To:Mailing-List:Precedence:List-Id:List-Unsubscribe: List-Archive:List-Post:List-Help:Sender:Delivered-To; bh=XsLBmN2 2WI/AlprxmbDlSb3ymTw=; b=xkv30+/tUO+rlHIoAVEMlk3eBUNVZmvie/ZP3QR YPQ1j2TNQMap31UA4n16/qkKhl6CT/p98PNoBUoVWvDicpVe0qSMXniPtfm2FsDE Z/wJqgoMlbjkNgkcxT6rPSYBcczQYB198RFHNIjbWs0RDmipI9k+3yjIf5N4PB8x nOg0=
- Resent-date: Tue, 6 Mar 2012 15:08:14 -0500
- Resent-from: Vaugha Brewchuk <vaugha_brewchuk@xxxxxxxx>
- Resent-message-id: <201203062008.q26K8bcU032750@xxxxxxxxxxx>
- Resent-to: gcc-help@xxxxxxxxxxx
Hello,
I recently spent a considerable amount of time porting gcc-3.2.3 to NEXTSTEP 3.3 on m68k NeXT hardware. With some tweaks I was able to finish all three stages of c, objc, c++ and f77 and all the binaries successfully compare. I do, however, have a problem with correctly configuring libstdc++ and consequently c++ binaries do not link. I spent some time reading through the gcc, collect2 and libstdc++ documentation, but so far I was not able to find an obvious solution. Below are the error messages that I receive when compiling abi_check.cc:
/bin/ld: Undefined symbols:
access(char const*, int)
___gxx_personality_sj0
___cxa_call_unexpected
strxfrm(char*, char const*, unsigned long)
strdup(char*)
write(int, void const*, unsigned long)
_strdup
I presume that the function declarations displayed above originate from collect2 and that they were not picked up from the NeXT headers during the libstdc++ configuration. Where can I override this so that the messages disappear? I already defined these functions (access, strxfrm, strdup and write) as required in the applicable libstdc++ code but that is not sufficient. Presumably collect2 stores a definition of all available system symbols somewhere?
This brings me to my second question. How do I then add the object files or source code for the functions missing from the standard NeXT libraries to the libstdc++ build? I looked through the source tree and nothing obvious jumps at me.
Finally, I am somewhat perplexed about the missing ___gxx_personality_sj0 and ___cxa_call_unexpected symbols, and would appreciate any insight.
I should also add here that I am not a software developer, but I simply enjoy tinkering with software as a hobby, so please be gentle with me.
Any assistance or suggestions would be greatly appreciated,
thank you!
[Linux C Programming]
[Linux Kernel]
[eCos]
[Fedora Development]
[Fedora Announce]
[Autoconf]
[The DWARVES Debugging Tools]
[Yosemite Campsites]
[Yosemite News]
[Linux GCC]