• 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: linker error with Xcode 2.4
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: linker error with Xcode 2.4


  • Subject: Re: linker error with Xcode 2.4
  • From: "Roni Music" <email@hidden>
  • Date: Fri, 11 Aug 2006 12:16:19 +0200

Hi,

Thanks for responding.

Every time I update Xcode one or more of my projects fail to build, sigh...

I spent the whole day yesterday to solve the problem
I need to use the 10.3.9 SDK and gcc 3.3 for my ppc build


I got it to link OK by setting the optimization level to -Os for the file that have the InvokeMovieExportGetDataUP() call
and to remove the compiler flag: -fno-inline for the debug build


this make the whole Universal binary to build OK

I can also set a a compiler flag
-fkeep-inline-functions
which makes the PPC side compile and link OK
but the Intel side generates a lot of "mulitple definitions of symbol" error.
All relates to QuickTime functions



If there was a way to pass different flags to the PPC and Intel as we can with
GCC_VERSION_ppc and GCC_VERSION_i386 etc
this would solve the problem. It seems this is not possible


So I also currently have a work around but it should have to be this way

Rolf





----- Original Message ----- From: "Wyatt Webb" <email@hidden>
To: "Roni Music" <email@hidden>
Cc: <email@hidden>
Sent: Thursday, August 10, 2006 10:36 PM
Subject: Re: linker error with Xcode 2.4



We actually had that same error on a different QuickTime call. After a conversation with no fewer than 3 Apple Engineers, here's the upshot:

With Xcode 2.4, the 10.3.9 SDK now includes the QuickTime 7.1.2 headers (Xcode 2.3 had a 10.3.9 SDK with the Quicktime 6 headers)

The difference in Movies.h was the addition of several explicit inlines for calls dealing with UPPs since most are pass through for Mach-O.

That's important because those methods are also declared extern at a different point in the file. That gives you the combination of being "extern inline". I then had a self-described gcc compiler grunt tell me that gcc 3.3 had a "feature" that did special work with items marked as "extern inline" which ended up leaving the symbol unavailable for linking. This doesn't happen in gcc 4 as the "feature" was removed.

We tried mucking with compiler flags to no avail. The only suggestion I got that I haven't tried was to back up to the 10.2.8 SDK if you need to target systems before 10.3.9. If 10.3.9 is the minimum for your app, you can use gcc 4 (supposedly, I haven't tried) on the 10.3.9 SDK.

I have to support older than that, so going to gcc 4 was not an option. However, this only happened to me on a single call (New[...] UPP)which is literally a pass though so I can simply skip the call can just assign my callback as-is in my Mach-O code and continue making the call when I compile the same path for CFM with CodeWarrior. You might be able to do something similar and avoid making the problematic call when compiling with Xcode.

Either way, it was recommended I file a Radar bug about the change in SDK causing problems. I can work around, but other folks might not be able to do so. Apple may have to come up with a better general solution for other folks.

Hope that helps,

-Wyatt

On Aug 9, 2006, at 10:23 AM, Roni Music wrote:


I updated to Xcode 2.4 and one of my apps fails to link with the error below after updating
This is the PPC build of an Universal binary, using gcc 3.3 and 10.3.9 SDK


a QuickTime function
InvokeMovieExportGetDataUP
fails to link

ld: /Users/ingvarnilsson/Desktop/programming/programming/ASD_OS_X/ build/ASD1.build/Imported CodeWarrior Settings/ASD debug.build/ Objects-normal/ppc/CReadM4PQuickTimeFile.o
illegal reference for -dynamic code (section difference reference from section (__TEXT,__eh_frame) relocation entry (4) to symbol: _InvokeMovieExportGetDataUPP defined in dylib:
Developer/SDKs/MacOSX10.3.9.sdk/System/Library/Frameworks/ QuickTime.framework/QuickTime)


thanks for any help
Rolf

_______________________________________________
Do not post admin requests to the list. They will be ignored.
Xcode-users mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
40inspiration.com


This email sent to email@hidden



_______________________________________________ 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: 
 >linker error with Xcode 2.4 (From: Roni Music <email@hidden>)
 >Re: linker error with Xcode 2.4 (From: Wyatt Webb <email@hidden>)

  • Prev by Date: MS Excel 2004 XLL addin in xcode
  • Next by Date: Re: dyld crash on my intel version of my application
  • Previous by thread: Re: linker error with Xcode 2.4
  • Next by thread: Re: linker error with Xcode 2.4
  • Index(es):
    • Date
    • Thread