質問・問題
Unity SDKでmacOSアプリのビルドの際に「DllNotFoundException: agoraSdkCWrapper」のエラーが出ます。
回答・解決方法
MacのAgora Unity プロジェクトがビルドされると、フレームワークライブラリのシンボリックリンク構造が失われことが原因になります。
回避策:
Unity SDKのプロジェクトにある下記フォルダのスクリプトを利用することでAgoraRTCKitフレームワーク内のシンボリックリンク構造を復元させることができます。
Assets/AgoraEngine/Scripts/AgoraTools
仮定:
${project_path}, プロジェクトフォルダ
${build_folder}, ビルド先フォルダ
TestMAC.app;御社アプリ
Steps:
- cd ${build_folder}
- ${project_path}/Assets/AgoraEngine/Scripts/AgoraTools/prep_codesign.sh TestMAC.app
- /usr/bin/security find-identity -v -p codesigning
#こちらのコマンドで利用できる証明書が探せます - (export SIGNATURE="<your signature>"; ${project_path}/Assets/AgoraEngine/Scripts/AgoraTools/signcode.sh TestMAC.app)
上記実行後、下記結果が得られます。
Verify that the result is
TestMac.app: valid on disk
TestMac.app: satisfies its Designated Requirement
prep_codesign.sh とsigncode.sh 内のコメントに上記詳細が記載されております。