gpt4 book ai didi

xcode4 - 使用 Xcode 创建的设备驱动程序将无法加载

转载 作者:行者123 更新时间:2023-12-02 03:24:28 25 4
gpt4 key购买 nike

我已经基于此链接实现了设备驱动程序应用程序https://developer.apple.com/library/archive/documentation/Darwin/Conceptual/KEXTConcept/KEXTConceptIOKit/iokit_tutorial.html

如果我尝试在终端上加载设备($ sudo cp -R MyDriver.kext/tmp),我会收到错误:

No kernel file specified; using running kernel for linking.
MyDriver.kext is invalid; can't resolve dependencies.
MyDriver.kext is invalid; can't resolve dependencies.
MyDriver.kext is invalid; can't resolve dependencies.
MyDriver.kext has problems:
Validation Failures:
Info dictionary property value is of illegal type:
IOKitPersonalities->MyDriver->IOKitDebug

Authentication Failures: File owner/permissions are incorrect (must be root:wheel, nonwritable by group/other):
/Users/Rasheed/Library/Developer/Xcode/DerivedData/MyDriver-gdmnlqdybpdwzyanoeludcalqwba/Build/Products/Debug/MyDriver.kext
/Users/Rasheed/Library/Developer/Xcode/DerivedData/MyDriver-gdmnlqdybpdwzyanoeludcalqwba/Build/Products/Debug/MyDriver.kext/Contents
/Users/Rasheed/Library/Developer/Xcode/DerivedData/MyDriver-gdmnlqdybpdwzyanoeludcalqwba/Build/Products/Debug/MyDriver.kext/Contents/Info.plist
/Users/Rasheed/Library/Developer/Xcode/DerivedData/MyDriver-gdmnlqdybpdwzyanoeludcalqwba/Build/Products/Debug/MyDriver.kext/Contents/MacOS
/Users/Rasheed/Library/Developer/Xcode/DerivedData/MyDriver-gdmnlqdybpdwzyanoeludcalqwba/Build/Products/Debug/MyDriver.kext/Contents/MacOS/MyDriver
/Users/Rasheed/Library/Developer/Xcode/DerivedData/MyDriver-gdmnlqdybpdwzyanoeludcalqwba/Build/Products/Debug/MyDriver.kext/Contents/Resources
/Users/Rasheed/Library/Developer/Xcode/DerivedData/MyDriver-gdmnlqdybpdwzyanoeludcalqwba/Build/Products/Debug/MyDriver.kext/Contents/Resources/en.lproj
/Users/Rasheed/Library/Developer/Xcode/DerivedData/MyDriver-gdmnlqdybpdwzyanoeludcalqwba/Build/Products/Debug/MyDriver.kext/Contents/Resources/en.lproj/InfoPlist.strings
Warnings:
Personality has no CFBundleIdentifier; the kext's identifier will be inserted when sending to the IOCatalogue:
MyDriver

我的疑问是:

  1. 什么是未指定内核文件错误(我在应用程序中错过了什么)?

  2. MyDriver.kext 是什么内容无效;无法解决依赖关系?

  3. 我的 bundle 标识符是:

     <key>CFBundleIdentifier</key>
    <string>com.MyCompany.driver.${PRODUCT_NAME:maanu}</string>

    什么是Info字典属性值是非法类型:

    IOKitPersonalities->MyDriver->IOKitDebug?

    (MyDriver 我的应用程序名称。)

最佳答案

第一个内核依赖项。
这是在驱动程序的 info.plist 中指定的。这里info.plist的路径似乎是/Users/Rasheed/Library/Developer/Xcode/DerivedData/MyDriver-gdmnlqdybpdwzyanoeludcalqwba/Build/Products/Debug/MyDriver.kext/Contents/Info.plist

以下是info.plist中AppleHIDKeyboard.kext的内核依赖
(key)OSBundleLibraries<(/key)
(字典)
(key)com.apple.iokit.IOHIDFamily(/key)
(字符串)1.4(/字符串)
(key)com.apple.kpi.iokit(/key)
(字符串)10.0.0d2(/字符串)
(key)com.apple.kpi.libkern(/key)
(字符串)10.0.0d2(/字符串)
(/字典)

第二次身份验证失败:
您可以通过以下过程来部署您的驱动程序来解决此问题。
1.将 MyDriver.kext 放入桌面。
2.打开终端应用程序并输入下面的命令列表。
3.sudo chown -R root:wheel ~/Desktop/MyDriver.kext
4.sudo chmod -R 755 ~/Desktop/MyDriver.kext
5.mv -f ~/Desktop/MyDriver.kext/System/Library/Extensions/
6.触摸/System/Library/Extensions/

第三 CFBundleIdentifier 警告。
我不确定这里是什么类型的问题,此警告可能会使您的驱动程序无法执行。
但是,您应该检查您的驱动程序的 info.plist,确认您的驱动程序是否具有 CFBundleIdentifier 键和关联值。
此外,您还应该检查驱动程序的项目设置。

希望这对你有帮助,祝你有美好的一天!

关于xcode4 - 使用 Xcode 创建的设备驱动程序将无法加载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7792926/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com