Re: Diskarbitration 10.3 and 10.4
Re: Diskarbitration 10.3 and 10.4
- Subject: Re: Diskarbitration 10.3 and 10.4
- From: Jean-Daniel Dupas <email@hidden>
- Date: Mon, 16 Jun 2008 11:34:20 +0200
Le 16 juin 08 à 11:00, Andy Green a écrit :
-----Original Message-----
From: Kevin Elliott [mailto:email@hidden]
Sent: 16 June 2008 00:44
To: Andy Green
Cc: email@hidden
Subject: Re: Diskarbitration 10.3 and 10.4
On Jun 12, 2008, at 8:42 AM, Andy Green wrote:
I can, instead, use the
10.3.9/PrivateFrameworks/DiskArb.framework,
and
the ppc version builds and runs, however there's obviously no i386
build
in there.
Is it possible to have a single build, which runs the
public framework
on 10.4 and the private one on 10.3?
Not to damper your enthusiasm, but you need to be aware the that
public API available in 10.4 is COMPLETELY different than the
private
API from 10.3. It is possible to build code that will work
on 10.3 &
10.4, but you'd need to write your code against the 10.3 API. The
older API is much more difficult to work with and a lot more
arcane.
Depending on what your trying to do you may be able to make it work,
but if your trying to do something complex it's going to be a hard
job. Unless you MUST have 10.3 support, I suggest you target 10.4
where the API is both public, and much more obvious.
Which leads to the obvious question- what are you trying to do?
Hi Kevin,
Maybe I was misled by
http://lists.apple.com/archives/Ata-scsi-dev/2005/Sep/msg00014.html -
"Disk Arbitration is private on 10.3. It is public on 10.4. Disk
Arbitration is otherwise the same on 10.3 and 10.4."
All I want to do is eject and unmount a disk from within a program, so
I'm calling DADiskEject and DADiskUnmount (with a couple more calls to
get the right objects - see
http://lists.apple.com/archives/Darwin-dev/2008/May/msg00016.html).
By doing my own link wrapper with dlopen/dlsym etc. it compiles and
runs
on 10.3, and I'll be testing that it actually works in the next couple
of days.
I'm aware that the 10.2 DiskArb is completely different, so I'm not
planning to support that.
Cheers,
Andy
You have to use per architecture build settings.
In Xcode 3.0, Open you target build settings, select the build
settings you want to set (base SDK, deployment version, ...) and then
click on the little gear at the bottom of the settings window, and
choose "add per architecture settings" (I don't have access to the
exact label, but you get the main idea).
If you are using Xcode 2.5, you can use the old way to do it:
SDKROOT_i386 = /Developer/SDKs/MacOSX10.4u.sdk
SDKROOT_ppc = /Developer/SDKs/MacOSX10.3.9.sdk
Attachment:
smime.p7s
Description: S/MIME cryptographic signature
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Darwin-dev mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden