首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Xcode 13 & Flutter 2.5.1 -致命错误:找不到'Flutter/Flutter.h‘文件#import <Flutter/Flutter.h>

Xcode 13 & Flutter 2.5.1 -致命错误:找不到'Flutter/Flutter.h‘文件#import <Flutter/Flutter.h>
EN

Stack Overflow用户
提问于 2021-09-29 15:37:26
回答 2查看 562关注 0票数 0

我在升级到Xcode 13后才开始遇到这个问题。几天前我把Flutter升级到了2.5.1

这就是我所看到的:

代码语言:javascript
复制
Failed to build iOS app
Error output from Xcode build:
↳
    --- xcodebuild: WARNING: Using the first of multiple matching destinations:
    { platform:iOS Simulator, id:dvtdevice-DVTiOSDeviceSimulatorPlaceholder-iphonesimulator:placeholder, name:Any iOS Simulator Device }
    { platform:iOS Simulator, id:AA0EE6D2-4E24-48C6-B9D6-4F2598B68E4E, OS:15.0, name:iPad (9th generation) }
    { platform:iOS Simulator, id:765C02E6-837E-4443-9073-722162C490DC, OS:15.0, name:iPad Air (4th generation) }
    { platform:iOS Simulator, id:30429B61-93BC-4497-B556-3639373A10D0, OS:15.0, name:iPad Pro (9.7-inch) }
    { platform:iOS Simulator, id:57217E13-F700-4673-9ABF-1866BAE1E435, OS:15.0, name:iPad Pro (11-inch) (3rd generation) }
    { platform:iOS Simulator, id:A85DD0A6-EA0F-480C-9A6F-07966F4FE66B, OS:15.0, name:iPad Pro (12.9-inch) (5th generation) }
    { platform:iOS Simulator, id:1D568B75-852B-42BE-8178-C39E6C515C41, OS:15.0, name:iPad mini (6th generation) }
    { platform:iOS Simulator, id:347466A9-6BA4-4674-94B6-BCB3ACB11F00, OS:15.0, name:iPhone 8 }
    { platform:iOS Simulator, id:F74B444A-2838-4920-91DB-83893719250E, OS:15.0, name:iPhone 8 Plus }
    { platform:iOS Simulator, id:2D4AF847-04A7-463C-A46C-D5D1E200CFDC, OS:15.0, name:iPhone 11 }
    { platform:iOS Simulator, id:BCD3D3BD-6485-4575-AA35-BF9ADEEBB4BD, OS:15.0, name:iPhone 11 Pro }
    { platform:iOS Simulator, id:06DE013F-BF48-4857-B952-BFC2AA1BD304, OS:15.0, name:iPhone 11 Pro Max }
    { platform:iOS Simulator, id:8A06D628-6132-4558-BB65-5598FFAC98DC, OS:15.0, name:iPhone 12 }
    { platform:iOS Simulator, id:885B1C8A-0497-4D95-8A87-447E40AB9238, OS:15.0, name:iPhone 12 Pro }
    { platform:iOS Simulator, id:FF519331-8490-4219-92D0-ED9A08F11976, OS:15.0, name:iPhone 12 Pro Max }
    { platform:iOS Simulator, id:51671583-ED36-4330-839B-401BA09B3996, OS:15.0, name:iPhone 12 mini }
    { platform:iOS Simulator, id:950FC388-6567-40BD-AD31-6CC5A334AC97, OS:15.0, name:iPhone 13 }
    { platform:iOS Simulator, id:562728AB-E0CA-4675-BF75-787299ECE105, OS:15.0, name:iPhone 13 Pro }
    { platform:iOS Simulator, id:CBB3D2FF-97DF-4328-8AD0-7350F83989D1, OS:15.0, name:iPhone 13 Pro Max }
    { platform:iOS Simulator, id:D99FD6E3-C6DC-4F16-8092-83EA0216367F, OS:15.0, name:iPhone 13 mini }
    { platform:iOS Simulator, id:2A06C9C4-9D8C-4C9B-9620-12265131A747, OS:15.0, name:iPhone SE (2nd generation) }
    { platform:iOS Simulator, id:EA2B1A03-78F8-42B2-9818-41FE3F1E833A, OS:15.0, name:iPod touch (7th generation) }
    { platform:iOS, id:dvtdevice-DVTiPhonePlaceholder-iphoneos:placeholder, name:Any iOS Device }
    ** BUILD FAILED **
Xcode's output:
↳
    /Users/abc/Developer/flutter/.pub-cache/hosted/pub.dartlang.org/wakelock-0.5.2/ios/Classes/messages.m:4:9: fatal error: 'Flutter/Flutter.h' file not found
    #import <Flutter/Flutter.h>
            ^~~~~~~~~~~~~~~~~~~
    1 error generated.
    note: Using new build system
    note: Planning
    note: Build preparation complete
    note: Building targets in parallel
Could not build the application for the simulator.

我尝试过重新安装Flutter,删除并重新克隆我的项目,移除pod,flutter clean +pod install,flutter缓存修复,并从项目中删除Flutter并重新添加。

以上每种情况都会导致上述错误的某种变化。

我还不得不改变我的Podfile --

代码语言:javascript
复制
post_install do |installer|
  installer.pods_project.targets.each do |target|
   target.build_configurations.each do |config|
    config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '9.0'
   end
  end
 end

如果我将其还原,那么我会得到一组不同的错误,其中一些pods抱怨设置为8.0,并且需要从9.0到14.9.9。

我尝试更改Runner项目中的各个pod,但不起作用。上面的说明消除了这个错误,但现在我面对的是另一个错误。

值得一提的是,Android运行得很好。只是iOS而已。

对这个有什么其他的建议吗?

EN

回答 2

Stack Overflow用户

发布于 2021-10-29 09:58:07

这是对我有效的方法:

在Podfile中:替换

代码语言:javascript
复制
post_install do |installer|
  installer.pods_project.targets.each do |target|
   target.build_configurations.each do |config|
    config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '9.0'
   end
  end
 end

通过

代码语言:javascript
复制
post_install do |installer| 
  installer.pods_project.targets.each do |target| 
    flutter_additional_ios_build_settings(target) 
  end 
end

然后在Xcode中打开iOS文件,在Pod中,对于每个目标,在Build Settings中,将deployment Target设置为11 (也许9就足够了)

这是你已经尝试过的吗?

票数 0
EN

Stack Overflow用户

发布于 2021-11-16 11:55:12

在XCode 13和Flutter 2.5.3中有类似的问题:通过xcodebuild构建随机模块的错误(从UI works构建)。在我尝试删除“有问题的”库之后-- error是针对下一个随机库的,直到我坚持使用Flutter.h。

我的问题是,在解决问题的过程中,我在XCode中将部署目标更改为13,但弄得一团糟:我在Podfile,项目->运行器->信息,项目->运行器->构建设置中更新了它,但忘记了在目标->运行器->构建设置中进行更新。

一旦我更新了Targets->Runner->Build Settings,它就开始成功编译了。

最终,我在所有地方都回滚到了Target 11.0,它仍然可以编译。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69379468

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档