ios - the - xcode swift compatibility




Módulo compilado com o Swift 4.0 não pode ser importado no Swift 4.0.1 (4)

No entanto eu tenho recompilado o framework usando o mesmo Xcode e ainda me dá esse erro.

  • Base SDK iOS 11.1 para ambos
  • Swift Language Version Swift 4.0 para ambos
  • Não usando Pods / Carthage

Espero que alguém possa saber


Eu encontrei esse problema com o Xcode 10 beta, que adiciona o Swift 4.2. Meu problema não estava relacionado a Carthage nem a nenhuma dependência externa.

Vá para YourTarget > Build Settings > Swift Language Version para todos os seus destinos do Xcode.

Os meus estavam todos prontos para o Swift 4 .

Depois de adicionar uma fase de criação de arquivos de cópia, comecei a receber o erro

: 0: erro: o módulo compilado com o Swift 4.1.2 não pode ser importado pelo compilador Swift 4.2: /Users/user/Library/Developer/Xcode/DerivedData/MyApp-faskfrihumfcdibjxisjvbfshppp/Build/Intermediates.noindex/MyApp.build/Debug/ MyAppExtension.build/Objects-normal/x86_64/MyClass~partial.swiftmodule

O comando MergeSwiftModule falhou com um código de saída diferente de zero

Em seguida, defino a Swift Language Version cada alvo para o Swift 4.2 , o que eliminou o erro.

Não sei por que o erro estava ocorrendo, no entanto, como ter todos os alvos definidos como Swift 4 deve ser igualmente válido.


Instale o Xcode Toolchain da versão específica do Xcode que estava funcionando para você here .

Um conjunto de ferramentas Xcode inclui uma cópia do compilador, lldb e outras ferramentas relacionadas necessárias para fornecer uma experiência de desenvolvimento coesa para trabalhar em uma versão específica do Swift.

Abra as Preferências do Xcode, navegue até Components> Toolchains e selecione a toolchain instalada do Swift.

Isso permitirá que você compile e execute o aplicativo por enquanto.


No meu caso (Xcode 9.2):

Fui ao Xcode Preferences > Locations > Derived Data

Em seguida, apaguei os dados e fiz uma compilação limpa e estava ok.


No meu caso, baixei a versão Beta do xCode 11 para testar o SwiftUI. Quando eu executar meu projeto, eu tenho "módulo compilado com Swift 5.1 não pode ser importado pelo compilador Swift 5.0.1: ..." erro.

Para corrigir esse problema. Eu mudei a ferramenta de linha de comando xCode para a nova ferramenta de linha de comentário xCode 11. Depois disso, você pode criar um novo projeto xcode com o SwiftUI.

Xcode -> Preferências -> Localização -> Ferramenta de Linha de Comando XCode

Espero que isso ajude alguém que queira testar com novos freamework :)





swift4