Homebrewの再インストール
GitHub - Homebrew/install: 📥 Homebrew (un)installer を見て
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)" /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/uninstall.sh)"
Homebrewでインストールしていた諸々も消えたので入れ直します。
fish-shell
brew install fish
PostgresSQL
brew install postgres
~ pg_ctl -D /usr/local/var/postgres start pg_ctl: another server might be running; trying to start server anyway waiting for server to start....2020-06-21 01:06:21.086 JST [59996] FATAL: lock file "postmaster.pid" already exists 2020-06-21 01:06:21.086 JST [59996] HINT: Is another postmaster (PID 607) running in data directory "/usr/local/var/postgres"? stopped waiting pg_ctl: could not start server Examine the log output.
起動時に色々言われるので地道に対応します。
rm /usr/local/var/postgres/postmaster.pid mkdir /usr/local/var/postgres/{pg_tblspc,pg_twophase,pg_stat,pg_stat_tmp,pg_replslot,pg_snapshots}/ cd /usr/local/var/postgres/ mkdir pg_commit_ts mkdir -p pg_logical/snapshots mkdir -p pg_logical/mappings
- macos - `pg_tblspc` missing after installation of latest version of OS X (Yosemite or El Capitan) - Stack Overflow
- Automatically recreate empty pg_xxx folders if they don't exist (#2553) · Issues · GitLab.org / omnibus-gitlab · GitLab
Ruby
せっかくなのでrbenvをgitから入れます。
過去に入れたバージョンを一旦逃します。 再インストールするとそれぞれコンパイルする必要があって時間がかかります。
mv .rbenv/ .rbenv_old/
git clone https://github.com/rbenv/rbenv.git ~/.rbenv cd ~/.rbenv && src/configure && make -C src set -Ux fish_user_paths $HOME/.rbenv/bin $fish_user_paths ~/.rbenv/bin/rbenv init
インストール済みのバージョンを戻します。
mv .rbenv_old/versions/* .rbenv/versions/.
ruby-buildも入れます。
mkdir -p "$(rbenv root)"/plugins git clone https://github.com/rbenv/ruby-build.git "$(rbenv root)"/plugins/ruby-build
最新のRubyはHomebrewで入れていたので、rbenvでインストールします。
rbenv install 2.7.1 rbenv global 2.7.1
Ruby 2.6.5を動かそうとすると
~ ruby dyld: Library not loaded: /usr/local/opt/gmp/lib/libgmp.10.dylib Referenced from: /Users/shigerunakajima/.rbenv/versions/2.6.5/bin/ruby Reason: image not found fish: 'ruby' terminated by signal SIGABRT (Abort)
libgmpを求められるので、インストール
brew install gmp
- GitHub - rbenv/rbenv: Groom your app’s Ruby environment
- GitHub - rbenv/ruby-build: Compile and install Ruby
Ruby on Rails
Railsを動かそうとすると
~ rails c /Users/shigerunakajima/.rbenv/versions/2.6.5/lib/ruby/2.6.0/yaml.rb:3: warning: It seems your ruby installation is missing psych (for YAML output). To eliminate this warning, please install libyaml and reinstall your ruby.
libyamlを求められるので、インストール
brew install libyaml
現在のbrew list
~ brew list fish gmp icu4c krb5 libyaml openssl@1.1 pcre2 postgresql readline
再インストール前のも取っておけばよかったな・・・
追記
gitを入れ忘れていました。
brew install git
追記追記
RubyMineのターミナルに教えるrbenvのパスを更新しました。
~/.config/fish/config.fish にset PATH /usr/local/bin $PATH
と書いていたのを、set PATH /Users/shigerunakajima/.rbenv/bin/ $PATH
に更新しました。