Re: XCODE 2.1 targeting Panther
Re: XCODE 2.1 targeting Panther
- Subject: Re: XCODE 2.1 targeting Panther
- From: Jeff Moore <email@hidden>
- Date: Wed, 17 Aug 2005 17:49:49 -0700
Yup. That's important. Spelling is important too. That's what I
messed up. Plus, I also found out that you don't need to use the $
(SDKRoot) if you are already using $(SYSTEM_LIBRARY_DIR).
At any rate, in addition to making sure I had the header search paths
correct, I also had to add defines for KERNEL=1 and KERNEL_PRIVATE=1
to make things build correctly when I targeted the 10.3.9 SDK.
Here's a recap of what I had to do in the Reflector driver to target
the 10.3.9 SDK given that it was created with 10.4 in mind:
1) Make gcc 3.3 the default compiler using gcc_select.
2) In the project info window's "General" tab, select the 10.3.9 SDK
from the pop-up.
3) In any build setting the project is specifying a path, such as in
the header search paths settings, be sure to use an appropriate build
variable to prefix the path. For example, use $(SYSTEM_LIBRARY_DIR)
instead of /System/Library. Take a look at the Build Settings Notes
document from Xcode's Help menu for more info about what build
variables are available.
4) Make sure that KERNEL=1 and KERNEL_PRIVATE=1 are defined in any
target that is not directly a kernel extensions. For example, the
target that build the floating point and altivec code into static
link library prior to being linked into the driver's kext needs to
have these symbols defined.
That was pretty much it. Note that this driver uses some IOAudio API
that was new in 10.3, so I couldn't target the 10.2 SDK, but in
theory the same sorts of things should need to be done.
On Aug 17, 2005, at 2:14 PM, B.J. Buchalter wrote:
on 8/17/05 4:00 PM, Jeff Moore at email@hidden wrote:
Hmm. I tried this with the new AudioReflectorDriver that's in our new
SDK, but I couldn't get it to build. I got errors about not finding
<IOKit/IOKit.h> and other standard system headers.
I'll ask around internally to see if I can come up with a more
definitive answer for you all.
As I said, it is kinda tweaky to get to work, and I may very well
have left
something out of the recipe (I'm going by memory and how my current
driver
project is configured, but I may have missed something; if I get a
chance,
I'll take another look at it and report back; maybe I can try to do
this to
the AudioReflectorDriver -- that would be a more generally useful
guide).
I'm pretty sure that the
HEADER_SEARCH_PATHS =
"$(SDKROOT)/System/Library/Frameworks/Kernel.framework/Headers"
is a critical piece of this -- it is part of what lets everything
find the
Kext version of <IOKit/IOKit.h>.
But my memory is rusty; all I can report for sure is that I can
reliably
build 1394 audio drivers that load and run on panther using Xcode
2.1 on
Tiger.
Best regards,
B.J. Buchalter
Metric Halo
5 Donovan Drive
Hopewell Junction, NY 12533 USA
tel +1 845 223-6112
fax +1 603 250-2451
--
Jeff Moore
Core Audio
Apple
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Coreaudio-api mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden