Я следовал этому руководству, в частности «Листингу 3». При использовании директив #include для IOKit не возникло никаких ошибок сборки.
Однако сборка завершается с ошибкой, когда я раскомментирую 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)
Что мне не хватает?
РЕДАКТИРОВАТЬ
Та же ошибка возникает при использовании любого метода из набора I/O, включая: IONotificationPortGetRunLoopSource() и IORegisterForSystemPower().
Нет ошибок хотя при объявлении переменных, например для IONotificationPortRef
Подробнее здесь: https://stackoverflow.com/questions/381 ... t-on-xcode