LoginSignup
1
0

bundle install実行時に"An error occurred while installing pg (1.5.6), and Bundler cannot continue. "って出る時

Last updated at Posted at 2024-03-24

概要

$ rails new アプリ名 --database=postgresql

$ bundle install

などを実行した際にタイトルのエラー文に遭遇しました。

エラー文からわかる通り、「Railsのposgresql用のgemをインストールしている最中にエラーが発生しました」ということだとは思うのですが、ネット記事などで似たようなケースがあまりなく、類似の記事でも原因が自分のケースと全然違うようだったのであまり参考にならなそうですが自分のケースを備忘録的に書いてみました。

やったこと

$ brew services list


mysql none
postgresql@14 started
と表示されていたので、動いている状態でした。

最初から確認してみた

pg_config --version などのコマンドを実行して、PostgreSQLがインストールされているかを確認します。

$ pg_config --version
=> PostgreSQL 14.11(Homebrew)

でhomebrew経由で入れたpostgreSQLがしっかり入っていました。

$ which psql
=> /opt/homebrew/bin/psql

これはpsqlなどのDB操作をするときのコマンドの実行パスが表示されるようで

$ pg_config --bindir
=>/opt/homebrew/Cellar/postgresql@14/14.11_1/bin

こちらはPostgreSQLのbinディレクトリのパスを表示するようです。分かれてるっぽい?

調べるとgemでpgを入れるときに指定しなければいけないのはbinディレクトリのパスの方で

$ bundle config build.pg --with-pg-config=<pg_configのパス>

のようにすると上手くいきました!

まとめ

正直なぜこのような必要があったのかがいまいちわかっておらず、ただの備忘録的な感じになってしまいました。
またネットに似たような記事があまりなく、自分自身特に変わったことをした覚えはないのですが、
結果的にgemに意図的にpostgresqlのパスを指定しないといけない状況だったみたいです。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0