fastlane 流程化提包相關內容,這是我一路自己安裝 以及給同事安裝遇到的問題匯總 以及我找到的解決方案 記錄一下
安裝fastlane
sudo gem install fastlane
1>報錯: You don't have write permissions for the /usr/bin directory.
1>解決: 將命令改為: sudo gem install fastlane -n /usr/local/bin
參考: https://www.jianshu.com/p/b8406ff1e2f1
2>報錯: Failed to build gem native extension.
根據報錯內容。 會給出錯誤日志的位置。那么在console 輸入:open 位置 查看具體報錯內容
In file included from if_ruby.c:113:
In file included from /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/System/Library/Frameworks/Ruby.framework/Versions/2.3/usr/include/ruby-2.3.0/ruby/ruby.h:33:
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/System/Library/Frameworks/Ruby.framework/Versions/2.3/usr/include/ruby-2.3.0/ruby/ruby.h:24:10: fatal error: 'ruby/config.h' file not found #include "ruby/config.h"
2>解決: 將頭文件軟鏈接過去
cd /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/include/ruby-2.0.0/ruby
➜ ruby sudo ln -s ../universal-darwin17/ruby/config.h ./config.h
參考: https://www.tianmaying.com/snippet/1852
3> 報錯: ERROR: Failed to build gem native extension.
make: *** No rule to make target `/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/System/Library/Frameworks/Ruby.framework/Versions/2.3/usr/include/ruby-2.3.0/universal-darwin18/ruby/config.h', needed by `unf.o'. Stop.
make failed, exit code 2
3> 解決:在 ruby-2.3.0 目錄下創建一個 universal-darwin18
在console下:
cd /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/System/Library/Frameworks/Ruby.framework/Versions/2.3/usr/include/ruby-2.3.0
mkdir universal-darwin18
cp -r ./universal-darwin17/* ./universal-darwin18/
4> 報錯 Fastlane bundle update卡住解決方案
4> 解決 修改源
更換為
https://gems.ruby-china.com
保存,然后再cd到你的項目目錄下,執行
bundle update
5> 報錯 /Library/Ruby/Site/2.3.0/rubygems.rb:289:in `find_spec_for_exe': can't find gem bundler (>= 0.a) with executable bundle (Gem::GemNotFoundException)
from /Library/Ruby/Site/2.3.0/rubygems.rb:308:in `activate_bin_path'
from /usr/local/bin/bundle:23:in `<main>'
5> 解決 sudo gem install bundler -n /usr/local/bin -v "$(grep -A 1 "BUNDLED WITH" Gemfile.lock | tail -n 1)"
安裝fastlane過程中有可能報 fastlane requires Ruby version >= 2.2.2
這時候就需要更新ruby版本 安裝 rvm 通過rvm 來更新 ruby
\curl -sSL https://get.rvm.io | bash -s stable
如果報invalid byte sequence in US-ASCII 。 這個錯則需要設置 環境變量
在命令行輸入vi ~/.bash_profile 輸入
export LC_ALL=en_US.UTF-8
export LANG=en_US.UTF-8
然后 esc => !wq =>
使配置生效 source ~/.bash_profile