Re: sysctl dependencies not working in Tiger?
Re: sysctl dependencies not working in Tiger?
- Subject: Re: sysctl dependencies not working in Tiger?
- From: Dean Reece <email@hidden>
- Date: Thu, 14 Apr 2005 23:14:13 -0700
On Apr 14, 2005, at 10:26 PM, email@hidden wrote:
I'm trying to develop an updated version of a kext in time for Tiger's
release (I am using build 8A420), but I can't get kextload to load it.
Every time, it reports that any sysctls I try to register are
undefined. Specifically, the error everytime when running kextload
-t foo.kext is:
kextload: extension foo.kext appears to be valid
kld(): Undefined symbols:
_sysctl__children
_sysctl_handle_int
_sysctl_register_oid
_sysctl_unregister_oid
kextload: kld_load_from_memory() failed for module
/Users/username/project/
build/foo.kext/Contents/MacOS/foo
kextload: a link/load error occured for kernel extension foo.kext
load failed for extension foo.kext
I even tried creating an entirely new kext project in Xcode 2.0, and
added a few sysctl_register_oid calls and it stopped working.
info.plist includes com.apple.kernel.libkern in OSBundleLibraries, so
this ought to work.
The four symbols listed above are only exported from bsd, not libkern,
so you'll need to include a dependency on "com.apple.kpi.bsd" v8.0.
Note that the "com.apple.kpi.*" interfaces may not be used in
conjunction with the "com.apple.kernel.*" interfaces, so you'll need to
change from "com.apple.kernel.libkern" to "com.apple.kpi.libkern" v8.0.
When in doubt about which symbols come from where, cd into
/System/Library/Extensions/System.kext and run "nm -m" on the mach-o
binaries you find in there.
Hope this helps,
- Dean
_______________________________________________
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