Re: How to build a new ISO 9660 FS and test it
Re: How to build a new ISO 9660 FS and test it
- Subject: Re: How to build a new ISO 9660 FS and test it
- From: Terry Lambert <email@hidden>
- Date: Tue, 14 Nov 2006 20:13:08 -0800
On Nov 14, 2006, at 6:13 AM, Thomas Tempelmann wrote:
Hi, I've been writing ISO 9660 file system drivers for Mac OS 9 and
for
Toast, and I'd now like to bring OS X's old ISO 9660 driver up to
date,
with the hope that Apple will incorporate the improvements into OS X.
As I've never done anything with Darwin before, I have a few
beginner's
problem. Please guide me a little:
1. All I need is to build the XNU sources, right? That gets me a new
kernel which I can then boot from. But I wonder if, for testing,
there is
a better way, i.e. if I can exchange the file system alone at runtime
without the need to rebuild the entire kernel? I've heard that it's
possible to load file systems dynamically, I just wonder how hard it
would be to turn that ISO file system from the kernel into a loadable
one? Or is the one in the kernel not even the one OS X uses - is there
another one that's loaded later?
2. I have some trouble building the kernel. The included README is not
helpful. I found some tutorials, all several years old, on the web,
which
suggest that I need some extra files (cctools, relpath and some libs),
which I all installed as well. Finally, I found out that I need to
switch
to gcc3.3 to compile it. So, with that, using the latest
"xnu-792.12.6",
I could make all sources, it appears, but it stops with these linker
errors:
Undefined symbols:
_kld_load_basefile_from_memory
_kld_set_link_options
At this, I am stuck. Any suggestions?
You are missing libkld.a, which is where those symbols are exported.
It's a static library (this is a kernel...), and you have to have it
before you can build a kernel. Here's recent instructions on building
a kernel:
<http://developer.apple.com/documentation/Darwin/Conceptual/KernelProgramming/build/chapter_18_section_3.html
>
Looks like it was updated just a week ago.
This should get you to the point you can build a kernel of your own
that should be capable of booting.
3. BTW, one site, macosforge.org, announced already a 8.8.1 Darwin
release, but it's not available from the apple darwin download pages
yet
(they only list 8.8). I tried to sign up with that site, even
received a
login, but my login is not accepted. Is that normal? Does it take a
while?
4. Lastly, if I should succeed, what's the chances that Apple
incorporates the improvements? How would I go about that? I've already
filed a bug report about what I plan to fix, but I know of others who
files related bug reports years ago and nothing ever changed with
the iso
9660 file system.
Normally, if you file a an enhancement request with bug reporter that
includes source code that fixes some issue, it's _seriously_ looked at
by the engineers who would otherwise have to do the work themselves.
Include in the bug report contact information in case there are
questions that need to be answered. Obviously we can't promise
anything, but code contributions _are_ looked at closely and with
great interest.
-- Terry
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Darwin-kernel mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden