はじめに
今回はXcodeで実機(iPhone)向けにビルドした時に出た、
以下のようなエラーの原因と対処法の紹介です!
Library not loaded: 〇〇〇
Reason: no suitable image found. Did find:〇〇〇:
code signature in 〇〇〇 not valid for use in process using Library Validation: mapped file has no cdhash, completely unsigned? Code has to be at least ad-hoc signed.
原因と対処法
エラーの後半にある通り、原因はライブラリに署名がされていない事です。
code signature in 〇〇〇 not valid for use in process using Library Validation: mapped file has no cdhash, completely unsigned? Code has to be at least ad-hoc signed.
〇〇〇のコード署名は、ライブラリ検証を使用するプロセスで使用するには有効ではありません:マップされたファイルにはcdhashがなく、完全に署名されていませんか?コードには少なくともアドホック署名が必要です。
なので署名すれば良いのですが、まずキーチェーンアクセスを開いて
![]() |
署名するための証明書名をコピーしてきます。
(Apple DevelopmentやMac Developerという感じのやつ)
Apple Development: AAA BBB (123456ABCDE)
![]() |
あとはターミナルを開いて以下のように署名用のコマンドを打つだけ。
codesign -f -s Apple Development: AAA BBB (123456ABCDE) /usr/local/opt/*/lib/*.dylib
ちなみに、Disable Library Validationを有効にすれば大丈夫という情報もありましたが、
![]() |
自分の環境ではDisable Library Validation自体ありませんでした。
(Build Settingsのhardened runtimeを有効にすれば表示されるという情報もあったが、表示されなかった)