Ich muss einige Operationen in meiner C++ - App durchführen, wenn ich in Mac OS schlafe und aufwache. Ich werde darauf hingewiesen, das I/O-Kit zu verwenden.Build schlägt fehl, wenn Methoden von I/O Kit auf XCode verwendet werden
Ich folgte this guide, speziell "Listing 3". Bei den #include
-Direktiven für IOKit
sind keine Buildfehler aufgetreten.
jedoch Build schlägt fehl, wenn ich IOAllowPowerChange()
oder IOCancelPowerChange()
Kommentar-:
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 IOKit.framework
in Projekteinstellungen Hinzufügen> Build Phases> Link Binary mit Bibliotheken, die noch nichts geändert hat.
Was fehlt mir?
EDIT
gleicher Fehler tritt auf, wenn jede Methode von I/O-Kit, einschließlich: IONotificationPortGetRunLoopSource()
und IORegisterForSystemPower()
.
Keine Fehler, obwohl, wenn für IONotificationPortRef
Sie haben Recht, ich habe es auf das falsche Ziel, ein Framework hinzugefügt. – Obay