• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag
 

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Re: gcov cannot find $UNIX2003 symbols in Xcode 3
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: gcov cannot find $UNIX2003 symbols in Xcode 3


  • Subject: Re: gcov cannot find $UNIX2003 symbols in Xcode 3
  • From: Philip Aker <email@hidden>
  • Date: Mon, 29 Oct 2007 08:40:40 -0700

On 2007-29-10, at 07:13, Aaron Montgomery wrote:

Hopefully this isn't sitting in some FAQ somewhere. Just upgraded to Xcode 3.0 with a small Carbon project that uses Unit Tests (CPTest) and gcov. I am now getting a linker error. Looks like the gcov library is failing to find some functions (link line and errors below).

I don't remember if I've tried compiling this since moving to an Intel processor, so perhaps the Xcode 3 is a red herring and this is really an i386 issue.

Any suggestions?
Aaron

Ld /Users/eeyore/Developer/SuperAdd/build/Debug/SuperAdd.app/ Contents/MacOS/SuperAdd normal i386
cd /Users/eeyore/Developer/SuperAdd
/Developer/usr/bin/g++-4.0 -o /Users/eeyore/Developer/SuperAdd/ build/Debug/SuperAdd.app/Contents/MacOS/SuperAdd -L/Users/eeyore/ Developer/SuperAdd/build/Debug -F/Users/eeyore/Developer/SuperAdd/ build/Debug -filelist /Users/eeyore/Developer/SuperAdd/build/ SuperAdd.build/Debug/SuperAdd.build/Objects-normal/i386/ SuperAdd.LinkFileList -framework Carbon -arch i386 -mmacosx- version-min=10.4 -lgcov -isysroot /Developer/SDKs/MacOSX10.4u.sdk
Undefined symbols:
"_fcntl$UNIX2003", referenced from:
___gcov_open in libgcov.a(_gcov.o)
"_close$UNIX2003", referenced from:
___gcov_open in libgcov.a(_gcov.o)
"_open$UNIX2003", referenced from:
___gcov_open in libgcov.a(_gcov.o)
ld: symbol(s) not found
collect2: ld returned 1 exit status


On 2007-29-10, at 07:13, Aaron Montgomery wrote:

Hopefully this isn't sitting in some FAQ somewhere. Just upgraded to Xcode 3.0 with a small Carbon project that uses Unit Tests (CPTest) and gcov. I am now getting a linker error. Looks like the gcov library is failing to find some functions (link line and errors below).

I don't remember if I've tried compiling this since moving to an Intel processor, so perhaps the Xcode 3 is a red herring and this is really an i386 issue.

Any suggestions?
Aaron

Ld /Users/eeyore/Developer/SuperAdd/build/Debug/SuperAdd.app/ Contents/MacOS/SuperAdd normal i386
cd /Users/eeyore/Developer/SuperAdd
/Developer/usr/bin/g++-4.0 -o /Users/eeyore/Developer/SuperAdd/ build/Debug/SuperAdd.app/Contents/MacOS/SuperAdd -L/Users/eeyore/ Developer/SuperAdd/build/Debug -F/Users/eeyore/Developer/SuperAdd/ build/Debug -filelist /Users/eeyore/Developer/SuperAdd/build/ SuperAdd.build/Debug/SuperAdd.build/Objects-normal/i386/ SuperAdd.LinkFileList -framework Carbon -arch i386 -mmacosx- version-min=10.4 -lgcov -isysroot /Developer/SDKs/MacOSX10.4u.sdk
Undefined symbols:
"_fcntl$UNIX2003", referenced from:
___gcov_open in libgcov.a(_gcov.o)
"_close$UNIX2003", referenced from:
___gcov_open in libgcov.a(_gcov.o)
"_open$UNIX2003", referenced from:
___gcov_open in libgcov.a(_gcov.o)
ld: symbol(s) not found
collect2: ld returned 1 exit status

Anything to do with: CFBundle Lookup of Decorated Symbols

Some functions in the System framework have behavioral variants intended to conform to the UNIX03 specification. The symbols for these variants have a suffix, $UNIX2003, even though in code the functions may appear to be unchanged; their use in linkage depends on compile-time flags. There is also a $DARWIN_EXTSN suffix used for certain other behavioral variants. CFBundleGetFunctionPointerForName (s) does not supply any special treatment for these symbols. Clients wishing to use CFBundle to look up these functions must decide whether they wish the UNIX03 or other variant, or the unsuffixed base version of the function, and supply appropriate names to CFBundleGetFunctionPointerForName. None of these suffixes are used on earlier versions of Mac OS X, and the $UNIX2003 suffix is not used in 64-bit architectures, so clients attempting to obtain the suffixed versions should probably fall back to the unsuffixed versions if the suffixed versions are not found. The /usr/bin/nm tool is useful for determining which symbols a framework exports, and which symbols an executable imports. Note also that CFBundleGetFunctionPointerForName (s) does not supply any special treatment for C++ mangling of symbols. Clients wishing to look up these symbols using CFBundle must apply the mangling themselves.

?



Philip Aker
echo email@hidden@pn | tr a-z@. n-za-m.@
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Xcode-users mailing list      (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden


References: 
 >gcov cannot find $UNIX2003 symbols in Xcode 3 (From: Aaron Montgomery <email@hidden>)

  • Prev by Date: Re: All floating point constants 64-bit in Xcode 3?
  • Next by Date: Re: Perforce vs Xcode 3 => 100% cpu usage
  • Previous by thread: gcov cannot find $UNIX2003 symbols in Xcode 3
  • Next by thread: Re: gcov cannot find $UNIX2003 symbols in Xcode 3
  • Index(es):
    • Date
    • Thread