MacPortsのcurlがSSLのエラーを出すトラブルが直った
$ curl dyld: Library not loaded: /opt/local/lib/libssl.0.9.8.dylib Referenced from: /opt/local/bin/curl Reason: image not found Trace/BPT trap
MacPortsで入れてるcurlコマンドが、いつからかこんなエラーを出すようになってました。SSL関連のライブラリが読めてないらしく、使えません。
$ sudo port clean curl $ sudo port -n upgrade --force curl
取り急ぎこのコマンドで直りました。curlコマンドはそこそこ良く使うし、結構他のMacPortsパッケージが依存してるので、早めに直したいって事で原因とかは調べてません。
最初は$ sudo port upgrade curl
したけど駄目で、$ sudo port uninstall curl
しようとしたらcurlに依存するパッケージがあって駄目。依存するパーケージに依存ずるパッケージとかもありそうなので、他の方法を探して見つけました。
#25858 (curl still links with openssl 0.9.8) – MacPorts
参考にしたのはここです。
追記
$ icecast --version dyld: Library not loaded: /opt/local/lib/libssl.0.9.8.dylib Referenced from: /opt/local/bin/icecast Reason: image not found Trace/BPT trap
たまたま他のパッケージも同じエラーが出ました。上記解決策の-n upgrade --force
といった引数が必要なのか、ちょっと1つ1つ実行して確認してみました。結論としては、やはり必要だったという結果になりました。
下記にログの詳細を貼っておきます。
$ port installed icecast2 The following ports are currently installed: icecast2 @2.3.2_0 (active) $ port outdated icecast2 No installed ports are outdated. $ sudo port upgrade icecast2 Password: ---> Computing dependencies for curl-ca-bundle ---> Fetching curl-ca-bundle ---> Attempting to fetch certdata-1.74.txt from http://distfiles.macports.org/curl/ ---> Verifying checksum(s) for curl-ca-bundle ---> Extracting curl-ca-bundle ---> Applying patches to curl-ca-bundle ---> Configuring curl-ca-bundle ---> Building curl-ca-bundle ---> Staging curl-ca-bundle into destroot ---> Computing dependencies for curl-ca-bundle ---> Installing curl-ca-bundle @7.21.5_0 ---> Deactivating curl-ca-bundle @7.21.0_0 ---> Activating curl-ca-bundle @7.21.5_0 ---> Cleaning curl-ca-bundle $ icecast --version dyld: Library not loaded: /opt/local/lib/libssl.0.9.8.dylib Referenced from: /opt/local/bin/icecast Reason: image not found Trace/BPT trap $ sudo port clean icecast2 ---> Cleaning icecast2 $ icecast --version dyld: Library not loaded: /opt/local/lib/libssl.0.9.8.dylib Referenced from: /opt/local/bin/icecast Reason: image not found Trace/BPT trap $ sudo port upgrade icecast2 $ icecast --version dyld: Library not loaded: /opt/local/lib/libssl.0.9.8.dylib Referenced from: /opt/local/bin/icecast Reason: image not found Trace/BPT trap $ sudo port -n upgrade --force icecast2 ---> Computing dependencies for icecast2 ---> Fetching icecast2 ---> Verifying checksum(s) for icecast2 ---> Extracting icecast2 ---> Configuring icecast2 ---> Building icecast2 ---> Staging icecast2 into destroot ---> Deactivating icecast2 @2.3.2_0 ---> Uninstalling icecast2 @2.3.2_0 ---> Computing dependencies for icecast2 ---> Installing icecast2 @2.3.2_0 ---> Activating icecast2 @2.3.2_0 ---> Cleaning icecast2 $ icecast --version Icecast 2.3.2 usage: icecast [-b -v] -c <file> options: -c <file> Specify configuration file -v Display version info -b Run icecast in the background