flutter 启动 ios 项目失败 n 次,求大神帮忙

1 天前
 avenhen
我已经被这个破报错折腾了俩晚上了,google 上各种方法都尝试了,就是绕不过去。求大神解答。

## 启动报错内容
```txt
Failed to build iOS app
Error output from Xcode build:

--- xcodebuild: WARNING: Using the first of multiple matching destinations:
{ platform:iOS Simulator, id:16524F90-A508-4F0D-9091-F0CF7A5A6686, OS:17.5, name:iPhone 14 Pro }
{ platform:iOS Simulator, id:16524F90-A508-4F0D-9091-F0CF7A5A6686, OS:17.5, name:iPhone 14 Pro }
** BUILD FAILED **


Xcode's output:

Writing result bundle at path:
/var/folders/fq/2051nhxx5rs4svtvnsd_hvjr0000gn/T/flutter_tools.mEnGAj/flutter_ios_build_temp_dirENnESM/temporary_xcresult_bundle

/Users/cloud_prg/.pub-cache/hosted/pub.flutter-io.cn/wakelock-0.5.3+3/ios/Classes/messages.m:4:9: fatal error: 'Flutter/Flutter.h' file not found
#import <Flutter/Flutter.h>
^~~~~~~~~~~~~~~~~~~
1 error generated.
In file included from /Users/cloud_prg/.pub-cache/hosted/pub.flutter-io.cn/wakelock-0.5.3+3/ios/Classes/WakelockPlugin.m:1:
/Users/cloud_prg/.pub-cache/hosted/pub.flutter-io.cn/wakelock-0.5.3+3/ios/Classes/WakelockPlugin.h:1:9: fatal error: 'Flutter/Flutter.h' file not
found
#import <Flutter/Flutter.h>
^~~~~~~~~~~~~~~~~~~
1 error generated.
/Users/cloud_prg/.pub-cache/hosted/pub.flutter-io.cn/video_player-2.1.15/ios/Classes/messages.m:8:9: fatal error: 'Flutter/Flutter.h' file not
found
#import <Flutter/Flutter.h>
^~~~~~~~~~~~~~~~~~~
1 error generated.
Command SwiftEmitModule failed with a nonzero exit code
/Users/cloud_prg/Documents/project/github/FLUTTER/flutter_bolg_manage/ios/Runner.xcodeproj: warning: The iOS Simulator deployment target
'IPHONEOS_DEPLOYMENT_TARGET' is set to 11.0, but the range of supported deployment target versions is 12.0 to 17.5.99. (in target 'Runner' from
project 'Runner')
warning: Run script build phase 'Thin Binary' will be run during every build because it does not specify any outputs. To address this warning,
either add output dependencies to the script phase, or configure it to run in every build by unchecking "Based on dependency analysis" in the
script phase. (in target 'Runner' from project 'Runner')
warning: Run script build phase 'Run Script' will be run during every build because it does not specify any outputs. To address this warning,
either add output dependencies to the script phase, or configure it to run in every build by unchecking "Based on dependency analysis" in the
script phase. (in target 'Runner' from project 'Runner')

Lexical or Preprocessor Issue (Xcode): 'Flutter/Flutter.h' file not found
/Users/cloud_prg/.pub-cache/hosted/pub.flutter-io.cn/wakelock-0.5.3+3/ios/Classes/messages.m:3:8


Lexical or Preprocessor Issue (Xcode): 'Flutter/Flutter.h' file not found
/Users/cloud_prg/.pub-cache/hosted/pub.flutter-io.cn/wakelock-0.5.3+3/ios/Classes/WakelockPlugin.h:0:8


Lexical or Preprocessor Issue (Xcode): 'Flutter/Flutter.h' file not found
/Users/cloud_prg/.pub-cache/hosted/pub.flutter-io.cn/video_player-2.1.15/ios/Classes/messages.m:7:8


Uncategorized (Xcode): Command SwiftEmitModule failed with a nonzero exit code


Could not build the application for the simulator.
Error launching application on iPhone 14 Pro.
```

## podFile 内容
```Podfile
# Uncomment this line to define a global platform for your project
platform :ios, "14.0"

# CocoaPods analytics sends network stats synchronously affecting flutter build latency.
ENV["COCOAPODS_DISABLE_STATS"] = "true"

project "Runner", {
"Debug" => :debug,
"Profile" => :release,
"Release" => :release,
}

def flutter_root
generated_xcode_build_settings_path = File.expand_path(File.join("..", "Flutter", "Generated.xcconfig"), __FILE__)
unless File.exist?(generated_xcode_build_settings_path)
raise "#{generated_xcode_build_settings_path} must exist. If you're running pod install manually, make sure flutter pub get is executed first"
end

File.foreach(generated_xcode_build_settings_path) do |line|
matches = line.match(/FLUTTER_ROOT\=(.*)/)
return matches[1].strip if matches
end
raise "FLUTTER_ROOT not found in #{generated_xcode_build_settings_path}. Try deleting Generated.xcconfig, then run flutter pub get"
end

require File.expand_path(File.join("packages", "flutter_tools", "bin", "podhelper"), flutter_root)

flutter_ios_podfile_setup

target "Runner" do
use_frameworks!
use_modular_headers!

flutter_install_all_ios_pods File.dirname(File.realpath(__FILE__))
end

post_install do |installer|
installer.pods_project.targets.each do |target|
flutter_additional_macos_build_settings(target)
target.build_configurations.each do |config|
config.build_settings["IPHONEOS_DEPLOYMENT_TARGET"] = "14.0"
end
end
end

```
321 次点击
所在节点    Flutter
3 条回复
magic3584
20 小时 45 分钟前
可能的原因
1. cache 问题
2. flutter 和 xcode 版本问题
3. 第三方库不支持模拟器架构

解决方案
1. flutter clean 然后 flutter pub get
2. 进入 ios 文件夹 删掉 pods
3. 直接用 xcode 跑真机,没问题了再看其它 ide 和模拟器是否能运行
hwb
19 小时 7 分钟前
@magic3584 经典三板斧
ccw1234
11 小时 32 分钟前
要是上面 3 板斧解决不了问题,可以试一下下面的方案
1. Remove ios/Flutter/Flutter.podspec: rm ios/Flutter/Flutter.podspec
2. flutter clean
3. Run your app again.
https://www.cnblogs.com/qqcc1388/p/14686339.html

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1103716

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX