ブランチ名をタブ補完する
ブランチ名をタブ補完するのが便利そうだったので、設定までの記録です。一日半かかったかも。
homebrewでgitをインストール
brew install git
homebrewにgitをinstallしようとしたら失敗。調べてみると/opt/homebrewにinstallしなくてはいけないらしい。ここから沼に入り始めた…
一度homebrewを削除してインストールするため、brew bundleを使用して、.Brewfileにbrewに入れたライブラリを書き出して、gitで管理することに。
参照
# .Brewfile作成して書き出す
brew bundle dump --global --force
# 中身確認
cat ~/.Brewfile
# dotfiles作成
mkdir dotfiles
cd dotfiles
git init
git remote add origin リポジトリのURL
# gitにコミット
cp ~/.Brewfile .Brewfile
git commit -m "Add .Brewfile"
git push origin main
# homebrewを削除する
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/uninstall)"
# /opt/homebrewのディレクトリ作成
sudo mkdir /opt/homebrew
chown ${自分自身USER名} /opt/homebrew
# homebrewインストール
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
あとはPATHを通したいので ~/.zshrc に追記
export PATH="/opt/homebrew/bin:$PATH"
# インストールされてるか確認
brew -v
# gitでdotfilesをcloneする
git clone リポジトリのURL
# パッケージのライブラリのインストールがはじまる
brew bundle --global
# brewにインストールされたか確認
brew list
開発環境に問題ないか確認
./sbt run問題ないし、./init.dbも問題ない。
①flutter runしようとしたら、iOSシミュレーターが起動しない。
Xcode > preference > Locationsをひらく
Command Line toolsにversionを設定すると、起動した。
②Error: "The sandbox is not in sync with the Podfile.lock..." after installing RestKit with cocoapodsのエラー
Xcodeでbuildすると上記のエラーがでた。podをinstallしてみる
cd ios
pod install
するとこのようなエラーがでた
Ignoring ffi-1.14.2 because its extensions are not built. Try: gem pristine ffi --version 1.14.2
Analyzing dependencies
[!] The version of CocoaPods used to generate the lockfile (1.11.3) is higher than the version of the current executable (1.11.2). Incompatibility issues may arise.
firebase_analytics: Using Firebase SDK version '8.15.0' defined in 'firebase_core'
firebase_core: Using Firebase SDK version '8.15.0' defined in 'firebase_core'
firebase_crashlytics: Using Firebase SDK version '8.15.0' defined in 'firebase_core'
firebase_messaging: Using Firebase SDK version '8.15.0' defined in 'firebase_core'
[!] CocoaPods could not find compatible versions for pod "Firebase/CoreOnly":
In snapshot (Podfile.lock):
Firebase/CoreOnly (= 8.15.0)
In Podfile:firebase_core (from `.symlinks/plugins/firebase_core/ios`) was resolved to 1.17.0, which depends onFirebase/CoreOnly (= 8.15.0)
None of your spec sources contain a spec satisfying the dependencies: `Firebase/CoreOnly (= 8.15.0), Firebase/CoreOnly (= 8.15.0)`.
You have either:
out-of-date source repos which you can update with `pod repo update` or with `pod install --repo-update`.
mistyped the name or version.
not added the source repo that hosts the Podspec to your Podfile.
指示通りpod repo updateする
pod repo update
するとこのようなエラーがでた
Ignoring ffi-1.14.2 because its extensions are not built. Try: gem pristine ffi --version 1.14.2
Updating spec repo `master`
$ /usr/bin/git -C /Users/mac/.cocoapods/repos/master fetch origin --progress
remote: Enumerating objects: 406164, done.
remote: Counting objects: 100% (96614/96614), done.
remote: Compressing objects: 100% (1556/1556), done.
remote: Total 406164 (delta 95054), reused 96497 (delta 94979), pack-reused 309550
Receiving objects: 100% (406164/406164), 57.78 MiB | 8.36 MiB/s, done.
Resolving deltas: 100% (285757/285757), completed with 8750 local objects.
From https://github.com/CocoaPods/Specs
cb556c1d8351..7c60881ca29f master -> origin/master
$ /usr/bin/git -C /Users/mac/.cocoapods/repos/master rev-parse --abbrev-ref HEAD
master
$ /usr/bin/git -C /Users/mac/.cocoapods/repos/master reset --hard origin/master
Updating files: 100% (564438/564438), done.
HEAD is now at 7c60881ca29f [Add] TensorFlowLiteSwift 0.0.1-nightly.20220604
Updating spec repo `trunk`
xcode-select: error: tool 'xcodebuild' requires Xcode, but active developer directory '/Library/Developer/CommandLineTools' is a command line tools instance
――― MARKDOWN TEMPLATE ―――――――――――――――――――――――――――――――――――――――――――――――――――――――――――
### Command
```
/usr/local/bin/pod repo update
```
### Report
などいろいろ
### Error
```
LoadError - dlsym(0x205501540, Init_ffi_c): symbol not found - /Library/Ruby/Gems/2.6.0/gems/ffi-1.14.2/lib/ffi_c.bundle
/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/rubygems/core_ext/kernel_require.rb:54:in `require'
/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/rubygems/core_ext/kernel_require.rb:54:in `require'
――― TEMPLATE END ――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――
[!] Oh no, an error occurred.
Search for existing GitHub issues similar to yours:
https://github.com/CocoaPods/CocoaPods/search?q=dlsym%280x205501540%2C+Init_ffi_c%29%3A+symbol+not+found+-+%2FLibrary%2FRuby%2FGems%2F2.6.0%2Fgems%2Fffi-1.14.2%2Flib%2Fffi_c.bundle&type=Issues
If none exists, create a ticket, with the template displayed above, on:
https://github.com/CocoaPods/CocoaPods/issues/new
Be sure to first read the contributing guide for details on how to properly submit a ticket:
https://github.com/CocoaPods/CocoaPods/blob/master/CONTRIBUTING.md
こちらを参考にffiをinstall
sudo arch -x86_64 gem install ffi
再度試す
pod repo update
するとまた違うエラーがでた
mach-o file, but is an incompatible architecture (have 'arm64', need 'x86_64') in Flutter
こちらを参考に
llvmをインストール
arch -x86_64 /usr/local/homebrew/bin/brew install llvm
するとようやくpod updateできた!!
そして問題なくiOSシミュレーターが起動したのを確認できた。
再度brewにgitをインストールしてみる
arch -arm64 brew install git
インストールできた!
こちらを参考にしてすすめる
今Appleとbrewのどちらのgitを使用してるか確認
git --version
git version 2.24.3 (Apple Git-128)
変更するため.zshrcに書き込んでPATHを通す
export PATH=/usr/local/bin/git:$PATH
そして設定も追加
# git-promptの読み込み
source ~/.zsh/git-prompt.sh
# git-completionの読み込み
fpath=(~/.zsh $fpath)zstyle ':completion:::git:*' script ~/.zsh/git-completion.bashautoload -Uz compinit && compinit
# プロンプトのオプション表示設定
GIT_PS1_SHOWDIRTYSTATE=trueGIT_PS1_SHOWUNTRACKEDFILES=trueGIT_PS1_SHOWSTASHSTATE=trueGIT_PS1_SHOWUPSTREAM=auto
# プロンプトの表示設定(好きなようにカスタマイズ可)
setopt PROMPT_SUBST ; PS1='%F{green}%n@%m%f: %F{cyan}%~%f %F{pink}$(__git_ps1 "(%s)")%f$ '
ブランチ名をタブ補完できた!!
この記事が気に入ったらサポートをしてみませんか?