在Xcode上使用I/O套件的方法时,构建失败将失败
Build fails when using methods from I/O Kit on XCode
我需要在睡眠时在我的C 应用程序中执行一些操作,并唤醒Mac OS。我被指向使用I/O套件。
我遵循了本指南,特别是"列表3"。IOKit
的#include
指令没有发生构建错误。
但是,当我解雇IOAllowPowerChange()
或IOCancelPowerChange()
时,构建失败会失败:
Undefined symbols for architecture x86_64:
"_IOAllowPowerChange", referenced from:
SleepCallback(void*, unsigned int, unsigned int, void*) in MyAppFrameWork.a(PowerWatcher.o)
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
我尝试在项目设置中添加 IOKit.framework
>构建阶段>链接二进制与库,这没有更改任何内容。
我缺少什么?
编辑
使用I/O套件中的任何方法时会发生相同的错误,包括:IONotificationPortGetRunLoopSource()
和IORegisterForSystemPower()
。
虽然在声明变量时没有错误,例如IONotificationPortRef
确实应该通过针对iokit.framework链接来解决。您确定将其添加到正确的目标中吗?您需要在最终的可执行文件或框架中链接到它。静态库无法与框架链接。
相关文章:
- CMake + Qt,moc 编译失败,无法实现 QMetaObject 方法(编译器找不到基本 ui 对象的标头?
- 指示 Qi 变换属性失败的适当方法是什么?
- 模板的模板的模板推演失败(中间有继承),有没有更好的方法.
- 有没有一种很好的方法来实现具有默认失败情况的条件类型?
- 从类方法调用命名空间中名为 Same 的函数时,重载解析失败
- 检查 istream::read 和 istream::seekg 失败的最佳方法
- 使用方法失败更改constexpr对象成员
- 将C 方法参数转换为模板参数会因编译错误而失败
- 模拟简单的c ++方法在使用googletest时失败
- 在Xcode上使用I/O套件的方法时,构建失败将失败
- NSIS系统::调用-调用方法失败
- VS 链接器失败,标准::字符串方法出现"object already exists"错误
- 如何处理失败的方法:通过使用异常或使方法返回bool
- 在应用程序中检查互联网连接C++可靠方法:gethostbyname() 失败
- 我的复制构造函数导致使用我的类的方法失败.有人能看一眼,告诉我我做错了什么吗
- 矢量擦除方法失败
- C++将节点添加到链表的开头一次后失败.其他方法也有问题
- C++ 矢量分配() 方法经常失败
- 自动键入到自动方法失败.为什么
- 从基类的静态模板方法中调用继承类的受保护 ctor 失败