【发布时间】:2014-12-22 08:51:00
【问题描述】:
使用构建设置 Architecture= Universal(32/64bit Intel) 和 Base SDK=10.8 在 xcode 6.1 上为我们的 USB 设备构建 USB 驱动程序 kext,构建失败并出现错误,
clang: error: the clang compiler does not support 'fapple-kext' for C++ on Darwin/i386
Command /Applications/Xcode 2.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang failed with exit code 1
如果我选择“仅构建活动架构 = 是”,则相同的项目构建成功,但在这种情况下,kextload 在 10.8 OSX 上失败并出现以下错误,但它在 10.9 OSX 上运行
Dec 19 17:36:22 localhost com.apple.kextd[16]: Failed to load /System/Library/Extensions/gdmuwm.kext - (libkern/kext) link error.
Dec 19 17:36:22 localhost kernel[0]: kxld[com.gct.driver.gdmuwm]: The super class vtable '__ZTV12IOUserClient' for vtable '__ZTV13GdmUserClient' is out of date. Make sure your kext has been built against the correct headers.
Dec 19 17:36:22 localhost kernel[0]: kxld[com.gct.driver.gdmuwm]: The super class vtable '__ZTV19IOEthernetInterface' for vtable '__ZTV5gdmif' is out of date. Make sure your kext has been built against the correct headers.
Dec 19 17:36:22 localhost kernel[0]: kxld[com.gct.driver.gdmuwm]: The super class vtable '__ZTV20IOEthernetController' for vtable '__ZTV6gdmuwm' is out of date. Make sure your kext has been built against the correct headers.
Dec 19 17:36:22 localhost kernel[0]: Can't load kext com.gct.driver.gdmuwm - link failed.
Dec 19 17:36:22 localhost kernel[0]: Failed to load executable for kext com.gct.driver.gdmuwm.
Dec 19 17:36:22 localhost kernel[0]: Kext com.gct.driver.gdmuwm failed to load (0xdc008016).
Dec 19 17:36:22 localhost kernel[0]: Failed to load kext com.gct.driver.gdmuwm (error 0xdc008016).
请帮助我如何解决驱动程序的此链接错误。
【问题讨论】: