Hallo,
mein erstes Posting hier im Forum - aufregend
Ich programmiere schon länger, aber erst seit wenigen Wochen mit Xcode und Objective C bzw. Swift. So, nun mein Problem:
github.com/mixedinkey-opensource/MIKMIDI
Ich möchte diese MIDI-Library in mein Projekt (Xcode 6, iOS 7) einbinden, da ich auf externe MIDI-Geräte zugreifen möchte und mir hoffe, dass diese Lib mir das Leben ein wenig einfacher macht. Das iOS-Beispiel-Projekt von MIDMIDI (das ja noch ObjC und auch schon ein paar Jahre alt ist) lässt sich in Xcode 6 ohne Weiteres kompilieren. Wenn ich die Library aber in mein neues Swift-Projekt einbinde, bekomme ich (nachdem ich nach stundenlangem Probieren libxml2 erfolgreich eingebunden habe) einen Fehler "AppKit/AppKit.h file not found" bei folgendem Code (der in MIKMIDI zu Beginn eines .m-Files steht):
#if TARGET_OS_IPHONE
#import <UIKit/UIKit.h>
#else
#import <AppKit/AppKit.h>
#endif
Ist auch soweit nachvollziehbar, AppKit ist OSX und nicht iOS. Aber da es ein iOS-Swift-Projekt ist, sollte das doch gar nicht ausgeführt werden? Ich hab jetzt ewig in allen Build Settings/Build Phases gesucht, ob mir irgendwas auffällt, komme aber nicht weiter.
Im MIKMIDI-Demo-Projekt funktioniert das anstandslos. Wenn ich dort TARGET_OS_IPHONE anklicke, komme ich zum Simulator - iOS 8.2-File, wo TARGET_OS-IPHONE definiert ist. Wenn ich in meinem eigenen Swift-Projekt dieses Symbol anklicke, gibt's nur einen Fehler "Symbol not found". Ist das der Grund, warum die #if-Abfrage fehlschlägt (wurde nicht definiert)? Aber woran liegt das dann, dass diese Konstante (ist nicht direkt ne Konstante, ich weiß!) nicht verfügbar ist in meinem Projekt (der Simulator läuft doch bei mir auch!?)? Wo könnte ich vergessen haben, irgendwas einzubinden?
Falls ich wichtige Infos vergessen habe, seht es mir bitte nach
Vielen Dank schon mal für eure Hilfe!
LG Lukas
mein erstes Posting hier im Forum - aufregend
Ich programmiere schon länger, aber erst seit wenigen Wochen mit Xcode und Objective C bzw. Swift. So, nun mein Problem:
github.com/mixedinkey-opensource/MIKMIDI
Ich möchte diese MIDI-Library in mein Projekt (Xcode 6, iOS 7) einbinden, da ich auf externe MIDI-Geräte zugreifen möchte und mir hoffe, dass diese Lib mir das Leben ein wenig einfacher macht. Das iOS-Beispiel-Projekt von MIDMIDI (das ja noch ObjC und auch schon ein paar Jahre alt ist) lässt sich in Xcode 6 ohne Weiteres kompilieren. Wenn ich die Library aber in mein neues Swift-Projekt einbinde, bekomme ich (nachdem ich nach stundenlangem Probieren libxml2 erfolgreich eingebunden habe) einen Fehler "AppKit/AppKit.h file not found" bei folgendem Code (der in MIKMIDI zu Beginn eines .m-Files steht):
#if TARGET_OS_IPHONE
#import <UIKit/UIKit.h>
#else
#import <AppKit/AppKit.h>
#endif
Ist auch soweit nachvollziehbar, AppKit ist OSX und nicht iOS. Aber da es ein iOS-Swift-Projekt ist, sollte das doch gar nicht ausgeführt werden? Ich hab jetzt ewig in allen Build Settings/Build Phases gesucht, ob mir irgendwas auffällt, komme aber nicht weiter.
Im MIKMIDI-Demo-Projekt funktioniert das anstandslos. Wenn ich dort TARGET_OS_IPHONE anklicke, komme ich zum Simulator - iOS 8.2-File, wo TARGET_OS-IPHONE definiert ist. Wenn ich in meinem eigenen Swift-Projekt dieses Symbol anklicke, gibt's nur einen Fehler "Symbol not found". Ist das der Grund, warum die #if-Abfrage fehlschlägt (wurde nicht definiert)? Aber woran liegt das dann, dass diese Konstante (ist nicht direkt ne Konstante, ich weiß!) nicht verfügbar ist in meinem Projekt (der Simulator läuft doch bei mir auch!?)? Wo könnte ich vergessen haben, irgendwas einzubinden?
Falls ich wichtige Infos vergessen habe, seht es mir bitte nach
Vielen Dank schon mal für eure Hilfe!
LG Lukas
Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von midifreak ()