Kext Won't Load, Unresolved Symbols

I've got a kext that worked fine on Mojave, now it won't load at all, saying:

$ kextutil -tn kext
kxld[kext]: The following symbols are unresolved for this kext:
kxld[kext]: IOCatalogue::addDrivers(OSArray*, bool)
kxld[kext]: IOCatalogue::removeDrivers(OSDictionary*, bool)
kxld[kext]: IOCatalogue::startMatching(OSDictionary*)
Link failed (error code 5).
Check library declarations for your kext with kextlibs(8).

As far as I know these symbols are still declared in IOCatalogue.h in the Kernel framework, and while kexts are deprecated, they're still technically allowed in Catalina? Posted to FB6142774 (btw, what's the URL format for feedbacks?)

Answered by GabeJones in 376148022

Have you tried it on beta 5? A kext I develop was failing to load on beta 4 due to these missing symbols. It loads correctly on beta 5.

Hi!


Yes, kext are still allowed on Catalina, and they will be also in future versions. Apple "only" said they're "deprecating" kexts with support to be developed with system extension frameworks.., that is, Network Extensions and Drivers. So those types of kext will still be supported at macOS Catalina, but it's uncertain that they'll continue to be supported in future versions.., I guess it depends on the developer community feedback, number of extensions ported, feedback received, etc.


All other types of kexts will continue to be supported until, I guess, there is a way to develop them using alternative frameworks, so they should work just fine as they did on Mojave and previous versions...


That being said, found similar problems with other kexts (working fine with Mojave) myself using kextutil. I understand we're on beta, but no answer from Apple yet 😟 Mine is FB6139463

This continues to occur in Beta 3 (19A501i)

Continues to occur in Beta 4 (19A512f)

Accepted Answer

Have you tried it on beta 5? A kext I develop was failing to load on beta 4 due to these missing symbols. It loads correctly on beta 5.

Yes, I can confirm the loading issue is resolved in Beta 5

Kext Won't Load, Unresolved Symbols
 
 
Q