0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

bundle install詰まったとこまとめ。

Last updated at Posted at 2023-01-17

自分ノウハウ

bundle installで詰まった時は以下の手順が良いかもと思った

1.まず社内の人のbundle設定とGemfile.lock設定をもらってbundle install --path vendor/bundleを実施

2.以下を良い塩梅で並行して実施
・依存関係を壊さぬようバージョンをおろす
→gem queryやgem list gem名 -reaなどでインストール可能なバージョンを確認:参考
・エラーログをググってそれを実行
・社内知見をあさって実施
・gemのgitなどの公式サイトを確認、自分のインストールしているバージョンに不具合ないかissueで検索したりもよし
・ruby -vでバイナリーバージョンを確認。
x86_64-darwin19とかなら、x86_64はmacのバージョンなので、こんな感じのとこ見て、無印のosあればバージョンは問題なし

注意点
・gemのインストール先に注意
・bundle のconfig設定と、どのconfig設定を参照しているか注意
・エラーログだけでなく、インストール時などもログを注意してみること
ここを参考にgitignoreを対応

具体例

eventmachine(em-websocketが依存)

以下のようなエラー

ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make: *** [rubyeventmachine.bundle] Error 1

make failed, exit code 2

Gem files will remain installed in xxx/vendor/bundle/ruby/2.7.0/gems/eventmachine-1.2.7 for inspection.
Results logged to xxx/vendor/bundle/ruby/2.7.0/extensions/x86_64-darwin-22/2.7.0/eventmachine-1.2.7/gem_make.out

An error occurred while installing eventmachine (1.2.7), and Bundler cannot continue.
Make sure that `gem install eventmachine -v '1.2.7' --source 'https://rubygems.org/'` succeeds before bundling.

In Gemfile:
  em-websocket was resolved to 0.5.1, which depends on
    eventmachine

Gemfileに以下を追記してbundle install
gem 'eventmachine', '1.0.9.1'

gem query eventmachine -rea
WARNING:  query command is deprecated. It will be removed in Rubygems 4.
WARNING:  It is recommended that you use `gem search` or `gem list` instead.

*** REMOTE GEMS ***

eventmachine (1.2.7 ruby java x64-mingw32 x86-mingw32, 1.2.6 ruby java x64-mingw32 x86-mingw32, 1.2.5 ruby java x64-mingw32 x86-mingw32, 1.2.3 ruby java x64-mingw32 x86-mingw32, 1.2.2 ruby java x64-mingw32 x86-mingw32, 1.2.1 ruby java x64-mingw32 x86-mingw32, 1.2.0.1 ruby java x64-mingw32 x86-mingw32, 1.2.0 ruby x64-mingw32 x86-mingw32, 1.0.9.1 ruby java, 1.0.9 ruby java, 1.0.8 ruby java, 1.0.7 ruby java, 1.0.6 ruby java, 1.0.5 ruby java, 1.0.4 ruby java, 1.0.3 ruby java x86-mingw32 x86-mswin32-60, 1.0.2 ruby java x86-mingw32 x86-mswin32-60, 1.0.1 ruby java x86-mingw32 x86-mswin32-60, 1.0.0 ruby java x86-mingw32 x86-mswin32-60, 0.12.10 ruby java x86-mswin32-60, 0.12.8 ruby java x86-mswin32-60, 0.12.6 ruby java x86-mswin32-60, 0.12.4, 0.12.2, 0.12.0 ruby i386-mswin32, 0.10.0, 0.9.0, 0.8.1, 0.8.0, 0.7.2, 0.7.0, 0.5.3, 0.5.2, 0.5.1, 0.4.5, 0.4.4, 0.4.3, 0.4.2, 0.4.0, 0.3.1)

libv8

バックアップをとってGemfile.lockを削除し、Gemfile.lockの記載をlibv8-node (16.10.0.0)に変えてbundle install

mysql2

以下のコマンドを実施

bundle config --local build.mysql2 "--with-ldflags=-L/usr/local/opt/openssl/lib --with-cppflags=-I/usr/local/opt/openssl/include"
0
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
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?