Re: kld(): Undefined symbols: sysctl
Re: kld(): Undefined symbols: sysctl
- Subject: Re: kld(): Undefined symbols: sysctl
- From: Sam Vaughan <email@hidden>
- Date: Thu, 26 May 2005 09:48:14 +1000
Hi Alexey,
First you need to find out what your kext's kernel dependencies are.
There were a couple of threads about this back in April on this
list. Essentially, to find your two "oid" symbols:
% cd /System/Library/Extensions/System.kext/PlugIns
% find . -type f -a ! -name "*.plist" | xargs nm -o | egrep 'sysctl_
(un)?register_oid'
./BSDKernel.kext/BSDKernel: U _sysctl_register_oid
./BSDKernel.kext/BSDKernel: U _sysctl_unregister_oid
% cat BSDKernel.kext/Info.plist | grep -A1 CFBundleIdentifier
<key>CFBundleIdentifier</key>
<string>com.apple.kpi.bsd</string>
% cat BSDKernel.kext/Info.plist | grep -A1 CFBundleShortVersionString
<key>CFBundleShortVersionString</key>
<string>8.1.0</string>
So you need to make sure your kext's Info.plist contains the
following dependency in its OSBundleLibraries dict:
<key>com.apple.kpi.bsd</key>
<string>8.0.0</string>
(no need to require 10.4.1, so 8.0.0 will do)
Unfortunately there seem to be no matches for sysctl__hw_children:
% find . -type f -a ! -name "*.plist" | xargs nm -o | grep
sysctl__hw_children
So you'll probably have to work out how to avoid using it in your kext.
Sam
On 26/05/2005, at 7:40 AM, Alexey Manannikov <email@hidden> wrote:
Hello!
After upgrading to Tiger/Xcode 2.0 I receive this errors with loading
my kext:
kextload: sending 1 personality to the kernel
kld(): Undefined symbols:
_sysctl__hw_children
_sysctl_register_oid
_sysctl_unregister_oid
kextload: kld_load_from_memory() failed for module
What I need to make it work on Tiger?
Alexey
_______________________________________________
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