状況
- 発生タイミング:xzのバックドア問題(下記「参考」を参照)への対応で、Homebrewをダウングレード(アップグレードするとダウングレードされる)後、以下のエラーが出た。
(最近、「Homebrewのアップグレード」して「vipsのインストール」した事が影響しているかも?) - 症状:「チーム開発プラクティスで、bootcampアプリのアバター画像が表示されない」→「立ち上げ直そうとすると、以下のエラーメッセージが出て、立ち上がらず」
LoadError in HogeController#index
Could not open library 'glib-2.0.0': dlopen(glib-2.0.0, 0x0005): tried: 'glib-2.0.0' (no such file), '/System/Volumes/ Preboot/Cryptexes/OSglib-2.0.0' (no such file), '/usr/lib/glib-2.0.0' (no such file, not in dyld cache), 'glib-2.0.0' (no such file), '/usr/local/lib/glib-2.0.0' (no such file), '/usr/lib/glib-2.0.0' (no such file, not in dyld cache).
Could not open library 'libglib-2.0.0.dylib': dlopen(libglib-2.0.0.dylib, 0x0005): tried: 'libglib-2.0.0.dylib' (no such file), '/System/Volumes/Preboot/Cryptexes/OSlibglib-2.0.0.dylib' (no such file), '/usr/lib/libglib-2.0.0.dylib' (no such file, not in dyld cache), 'libglib-2.0.0.dylib' (no such file), '/usr/local/lib/libglib-2.0.0.dylib' (no such file), '/usr/lib/libglib-2.0.0.dylib' (no such file, not in dyld cache).
Searched in, /usr/lib, /usr/local/lib, /opt/local/lib, /opt/homebrew/lib
(以下略)
対応
- 調査結果:glibはインストールされているが、必要な場所にリンクが無いようだった。(普通は、インストール時にリンクが作られるはず)
- 以下のHomebrewのコマンドで解決した
brew link --force glib
(参考)link < brew(1) – The Missing Package Manager for macOS (or Linux) — Homebrew Documentation - 実際に行った手順
- glibに関する情報を確認
(参考)Little help? Could not open library 'glib-2.0.0': dlopen(glib-2.0.0, 5): image not found. · Issue #284 · libvips/ruby-vips
特に、このコメント brew install vips
:vipsのインストール(確認) → インストール済みbrew install glib
:glibのインストール(確認) → 以下のメッセージが出た
Warning: glib 2.80.0_2 is already installed, it's just not linked.
To link this version, run:
brew link glibbrew link --dry-run glib
:上記のコマンドで解決するが、一応、どこにどんなリンクが貼られるか確認brew link --force glib
:以下のメッセージが出た
Linking /opt/homebrew/Cellar/glib/2.80.0_2... 174 symlinks created.
- glibに関する情報を確認
参考
- xz のバックドア問題について
xzの脆弱性(バックドア埋め込み: Critical: CVE-2024-3094) - SIOS SECURITY BLOG
xzにバックドアが混入した件のまとめ(CVE-2024-3094) #Security - Qiita
XZ Utilsにバックドア攻撃が行われるまでのタイムラインまとめ - GIGAZINE
圧縮ツール「XZ Utils」にバックドアを仕込んだ謎の人物「Jia Tan」は一体何者なのか? - GIGAZINE - Hoembrew のコマンド
brew(1) – The Missing Package Manager for macOS (or Linux) — Homebrew Documentation
今さらだけどHomebrewのコマンドをちゃんと理解して使おう #初心者向け - Qiita
brew [alias] | Fig