site_archiver@lists.apple.com Delivered-To: darwin-kernel@lists.apple.com On Nov 14, 2006, at 6:13 AM, Thomas Tempelmann wrote: Undefined symbols: _kld_load_basefile_from_memory _kld_set_link_options Looks like it was updated just a week ago. -- Terry _______________________________________________ Do not post admin requests to the list. They will be ignored. Darwin-kernel mailing list (Darwin-kernel@lists.apple.com) Help/Unsubscribe/Update your Subscription: http://lists.apple.com/mailman/options/darwin-kernel/site_archiver%40lists.a... 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: 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...
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. This email sent to site_archiver@lists.apple.com