LoginSignup
4
0

More than 5 years have passed since last update.

docker startしようと思ったらdyld: Symbol not found: __cg_jpeg_resync_to_restart

Posted at

環境

macOS High Sierra 10.13.2
Docke for Mac 17.12_0-ce-mac47

起きたこと

仕事用のMacをSierraからHigh Sierraにバージョンアップしたところ、
Docker start hogehogeした時に下記のエラーでコンテナが起動できなくなりました。

dyld: Symbol not found: __cg_jpeg_resync_to_restart
  Referenced from: /System/Library/Frameworks/ImageIO.framework/Versions/A/ImageIO
  Expected in: /usr/local/lib/libJPEG.dylib
 in /System/Library/Frameworks/ImageIO.framework/Versions/A/ImageIO
Abort trap: 6

原因

こちらの記事によると、
Homebrewでインストールしたlibjpegに__cg_jpeg_resync_to_restartという関数が存在しないのが原因とのこと。

対処法

単純にbrew uninstall jpegをすると今度は他のエラーが(当然ですが)出るのでこれはできません。
なのでいささか気持ち悪いですが、brewで入れたlinjpegは物理的には残しつつシステム標準のlibjpegを使って欲しい。

というわけで.bash_profileに以下を追記しました。

~/.bash_profile
export DYLD_LIBRARY_PATH=/System/Library/Frameworks/ImageIO.framework/Versions/A/Resources/:$DYLD_LIBRARY_PATH

これで無事起動。
色々と釈然としませんがとりあえず動かさないと仕事にならないのでこれでよしということにします。

参考

dyld: Symbol not found: __cg_jpeg_resync_to_restart
Using on OS X: 'Symbol not found: __cg_jpeg_resync_to_restart'

4
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
4
0