配置Flutter的ios環(huán)境卡了很久,簡單記錄一下踩的坑和最后的解決方案
首先需要安裝Xcode(這一步基本沒啥問題)
安裝完Xcode之后再次執(zhí)行 flutter doctor 提示安裝CocoaPods,然后麻煩的問題就來了
安裝gem 改ruby依賴源等都很簡單,最后卡在sudo gem install cocoapods這條命令上,直接執(zhí)行提示目錄權限不夠,加上--system會報錯gem版本太低,更新gem又會提示依賴庫需要更高的ruby版本,以及各種依賴版本報錯等...
當前系統(tǒng)默認的ruby版本v2.3.3 gem版本v1.6
嘗試了一些stackoverflow上的解決方案但是沒有成功,例如下邊的:
sudo gem install -n /usr/local/bin cocoapods
最終解決的過程
1.安裝Rvm(RVM是一個命令行工具,可以提供一個便捷的多版本 Ruby 環(huán)境的管理和切換)
$ curl -L https://get.rvm.io | bash -s stable
2.載入環(huán)境變量
$ source ~/.bashrc
$ source ~/.bash_profile
3.rvm安裝ruby環(huán)境
$ rvm install 2.2.4
4.設置為默認版本
$ rvm use 2.2.4 --default
5.再次執(zhí)行cocoapods安裝報了openssl的錯誤于是用RVM升級Ruby
$ rvm install ruby
最終環(huán)境
ruby 2.6.3p62
gem 3.0.8
執(zhí)行sudo gem install cocoapods直接成功,無異常
flutter doctor -v
[?] Flutter (Channel master, v1.15.19-pre.9, on Mac OS X 10.14.6 18G3020, locale
zh-Hans-CN)
? Flutter version 1.15.19-pre.9 at /Users/shenxiaoshun/flutter
? Framework revision e13e17009d (4 hours ago), 2020-03-06 21:38:35 -0800
? Engine revision 5aff311948
? Dart version 2.8.0 (build 2.8.0-dev.12.0 9983424a3c)
[?] Android toolchain - develop for Android devices (Android SDK version 29.0.2)
? Android SDK at /Users/shenxiaoshun/Library/Android/sdk
? Android NDK location not configured (optional; useful for native profiling
support)
? Platform android-29, build-tools 29.0.2
? Java binary at: /Applications/Android
Studio.app/Contents/jre/jdk/Contents/Home/bin/java
? Java version OpenJDK Runtime Environment (build
1.8.0_212-release-1586-b4-5784211)
? All Android licenses accepted.
[?] Xcode - develop for iOS and macOS (Xcode 11.3.1)
? Xcode at /Applications/Xcode.app/Contents/Developer
? Xcode 11.3.1, Build version 11C504
? CocoaPods version 1.9.0
[?] Android Studio (version 3.6)
? Android Studio at /Applications/Android Studio.app/Contents
? Flutter plugin version 44.0.2
? Dart plugin version 192.7761
? Java version OpenJDK Runtime Environment (build
1.8.0_212-release-1586-b4-5784211)
[?] Connected device (1 available)
? iPhone 11 Pro Max ? 57ED11E3-56E6-486B-80D3-B7DDE1CE5F75 ? ios ?
com.apple.CoreSimulator.SimRuntime.iOS-13-3 (simulator)
? No issues found!
結束~