-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 On Wednesday, April 9, 2003, at 09:32 PM, Wally Crooze wrote:
G'day all,
I recently downloaded the msdosfs to learn how to implement a kext
(and also created a kext for nullfs). I attempted to build the msdosfs
and received an error for missing header <miscfs/specfs/specdev.h> and
<sys/signalvar.h>. I did a search in /System/Library/Frameworks and
couldn't find them. They are in /usr/include... but I'm surprised they
don't exist in the frameworks.
specdev.h is not part of the kernel API, so it is not included in the Kernel framework. You will need to grab this from Darwin CVS. As for signalvar.h, Apple screwed up in the beta's of Jaguar (May 2002) and removed 5-10 important system headers from the Kernel Framework. A year and three Dev Tool release later, and this has still not been fixed. So you will need to grab signalvar.h (and a few others) from Darwin CVS and manually copy them to the Kernel framework.
P.S. Does this mean that I would expect all headers for
filesystem/kernel development to be found in the Frameworks, rather
than the /usr/include? Please explain.
No, never use userland includes for KEXT development. Grab the missing headers from xnu in CVS.
Also, I receive a linker error for -ldisk when building mount_msdos.
You need to get the disk lib project from CVS and build it.
Has anybody attempted to make ufs a KEXT with mount command included,
like msdos, that actually builds? I'm sure this has been done many
times by people...
Actually, it hasn't been done a lot. There are a few network FS extensions from third parties, and PGP has done it. Those along with my implementation of Ext2 are about it. You may want to look at Ext2 FS to get an idea of what third parties have to go through to build a Filesystem driver; MSDOSFS is from Apple so you don't quite get the whole picture. <http://sourceforge.net/projects/ext2fsx> Look at <http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/ext2fsx/Build.rtf> for build dependencies.
I'm not trying to be lazy but rather re-use the experiences and the
product of others, instead of reinventing the brick over-again.
Thanks. I appreciate any assistance and hopefully can return such in
the future.
HTH. Brian Bergstrand <http://www.classicalguitar.net/brian/> PGP Key ID: 0xB6C7B6A2 It is easy to convert a bug to a feature; document it. - The Microsoft Employee Handbook, p.215, section B, article VII -----BEGIN PGP SIGNATURE----- Version: PGP 8.0.2 iQA/AwUBPpXihXnR2Fu2x7aiEQIy0QCg+X/7xsOhwkDQwDUqmYzfYBysuuUAoMd4 JSWlSrJSAQ5f0hfRim5ffmkK =UlPk -----END PGP SIGNATURE----- _______________________________________________ darwin-kernel mailing list | darwin-kernel@lists.apple.com Help/Unsubscribe/Archives: http://www.lists.apple.com/mailman/listinfo/darwin-kernel Do not post admin requests to the list. They will be ignored.