2016-05-03 10 views
2

Der Versuch, wie ich kann hier:MailCore2 über Karthago mit Swift Unterstützung Hinzufügen wie Vanille sein, um Xcode

New Project-> OS X-> Application-> Language (Swift) Name (MailCoreTest) Projekt schließen hinzufügen ein Cartfile an die Wurzel des Projekts mit einer einzigen Zeile in es: github „MailCore/mailcore2“ Run carthage Update --platform macosx aus der Wurzel des Projekts ein paar Warnungen zu bekommen, aber keine wirklichen Probleme:

/Users/theuser/Documents/XCode/MailCoreTest/Carthage/Checkouts/mailcore2/src/async/imap/MCIMAPAsyncSession.cpp:793:66: warning: 'gmailUserDisplayName' is deprecated [-Wdeprecated-declarations] 
/Users/theuser/Documents/XCode/MailCoreTest/Carthage/Checkouts/mailcore2/src/async/imap/MCIMAPAsyncSession.cpp:793:66: warning: 'gmailUserDisplayName' is deprecated [-Wdeprecated-declarations] 

öffnen das Projekt erneut in Xcode O Auf der Registerkarte "Allgemein" der Anwendungsziele, im Abschnitt "Eingebettete Binärdateien", ziehe ich MailCore.framework, das von Carthage erstellt wurde. ich auch noch die DSYM zu einem Produkt Verzeichnis Dateien kopieren Phase In diesem Stadium die App erfolgreich erstellt, aber wenn ich hinzufügen:

#import <MailCore/MailCore.h> 
#import <MailCore/MCOConstants.h> 

Zu einer Swift-Bridging-header.h Datei und fügen Sie es das Ziel -C Bridging-Header Bauen ich einstellen Lasten von Buildfehler:

MailCoreTest Group 
/Users/theuser/Documents/XCode/MailCoreTest/Carthage/Build/Mac/MailCore.framework/Headers/MCIndexSet.h 
/Users/theuser/Documents/XCode/MailCoreTest/Carthage/Build/Mac/MailCore.framework/Headers/MCIndexSet.h:15:10: Include of non-modular header inside framework module 'MailCore.MCIndexSet' 
/Users/theuser/Documents/XCode/MailCoreTest/<module-includes> 
/Users/theuser/Documents/XCode/MailCoreTest/<module-includes>:1:1: Umbrella header for module 'MailCore' does not include header 'MCIMAPConnectOperation.h' 
/Users/theuser/Documents/XCode/MailCoreTest/<module-includes>:1:1: Umbrella header for module 'MailCore' does not include header 'MCIMAPNoopOperation.h' 
/Users/theuser/Documents/XCode/MailCoreTest/<module-includes>:1:1: Umbrella header for module 'MailCore' does not include header 'MCMainThread.h' 
/Users/theuser/Documents/XCode/MailCoreTest/<module-includes>:1:1: Umbrella header for module 'MailCore' does not include header 'MCMXRecordResolverOperation.h' 
/Users/theuser/Documents/XCode/MailCoreTest/<module-includes>:1:1: Umbrella header for module 'MailCore' does not include header 'MCNNTPCheckAccountOperation.h' 
/Users/theuser/Documents/XCode/MailCoreTest/<module-includes>:1:1: Umbrella header for module 'MailCore' does not include header 'MCONNTPDisconnectOperation.h' 
/Users/theuser/Documents/XCode/MailCoreTest/<module-includes>:1:1: Umbrella header for module 'MailCore' does not include header 'MCOPOPNoopOperation.h' 
/Users/theuser/Documents/XCode/MailCoreTest/<module-includes>:1:1: Umbrella header for module 'MailCore' does not include header 'MCOSMTPLoginOperation.h' 
/Users/theuser/Documents/XCode/MailCoreTest/<module-includes>:1:1: Umbrella header for module 'MailCore' does not include header 'MCPOPNoopOperation.h' 
/Users/theuser/Documents/XCode/MailCoreTest/<module-includes>:1:1: Umbrella header for module 'MailCore' does not include header 'MCSizeFormatter.h' 
/Users/theuser/Documents/XCode/MailCoreTest/<module-includes>:1:1: Umbrella header for module 'MailCore' does not include header 'MCSMTPNoopOperation.h' 
/Users/theuser/Documents/XCode/MailCoreTest/MailCoreTest/Swift-Bridging-Header.h 
/Users/theuser/Documents/XCode/MailCoreTest/MailCoreTest/Swift-Bridging-Header.h:12:9: Could not build module 'MailCore' 
Failed to import bridging header '/Users/theuser/Documents/XCode/MailCoreTest/MailCoreTest/Swift-Bridging-Header.h' 

Das merkwürdige ist, ich habe diese Arbeit in einem anderen Projekt. Ich kann sogar Karthago-Update dagegen laufen lassen und nichts bricht. Nach stundenlangem Versuch, ein funktionierendes neues Projekt zu reproduzieren, kann ich es scheinbar nicht zum Laufen bringen. Ich muss etwas vermissen, aber ich kann nicht herausfinden, was es ist oder wo ich hinschauen soll.

Nur im Test habe ich Build-Einstellungen unter "Ziel" versucht und "Nicht-modulare Includes in Framework-Module zulassen" auf JA gesetzt, aber das gleiche Ergebnis - und im anderen Arbeitsprojekt habe ich dies auf NEIN gesetzt.

Antwort

3

Notwendigkeit für Karthago, die neuesten Commit auschecken. Ändern des Cartfile zu:

github "MailCore/mailcore2" "master" 

Magie

+0

ja taten, tat es Hilfe und gelöscht eine Reihe von Warnungen und potenzielle Speicherlecks usw. 1., entfernte ich MC2, die ich hatte, ausgecheckt Master und wieder hinzugefügt Befolgen Sie die Anweisungen in Readme.md –