Search Unity

Bug Vivox error on iOS build (Undefined symbols for architecture arm64)

Discussion in 'Editor & General Support' started by s-pan, Jan 20, 2023.

  1. s-pan

    s-pan

    Joined:
    May 12, 2022
    Posts:
    5
    Hello.
    Our project uses Unity and we need to add Vivox as a chat tool.
    Currently, the Android build is successful, but the iOS build is not successful.
    Building in Unity (xcode project creation) succeeds, but building in Xcode fails.
    It works fine in UnityEditor. (Platform: Android)
    =============
    environment
    =============
    Unity: 2021.3.3f1 (Pro License)
    Vivox: com.unity.services.vivox-15.1.180001-pre.1.tgz
    Xcode: 13.0
    Packages/manifest.json
    "com.unity.services.vivox": "file:../VivoxAsset/com.unity.services.vivox-15.1.180001-pre.1.tgz"
    Until now, Vivox's core function files were placed under the "Assets/Application/Vivox" folder, but with the new version of Vivox, we switched to managing them with PackageManager.
    Also, when switching to PackageManager, I deleted the "Assets/Application/Vivox" folder, so the old Vivox files no longer exist in the project.
    =============
    Error
    =============
    Undefined symbols for architecture arm64:
    "_CSharp_vx_android_set_mic_mute", referenced from:
    _VivoxCoreInstance_vx_android_set_mic_mute_m1CC2A656083ACED004F555C740C1869F2353D81C in VivoxUnity.o
    _VivoxCoreInstancePINVOKE_vx_android_set_mic_mute_m16192BE8C97CB5E25DBF305599350B67CE32D0C6 in VivoxUnity.o
    "_CSharp_vx_cpumonitor_start_eater", referenced from:
    _VivoxCoreInstance_vx_cpumonitor_start_eater_mDD8FC500DF74FB5A3EEAC34A6D8C25B795849513 in VivoxUnity.o
    _VivoxCoreInstancePINVOKE_vx_cpumonitor_start_eater_m6278C28E1429525079B98793ED7CFD8D19491D38 in VivoxUnity.o
    "_CSharp_vx_cpumonitor_stop", referenced from:
    _VivoxCoreInstance_vx_cpumonitor_stop_m662582D5AA3C7E973FC77C948BFFB0C626B455C6 in VivoxUnity.o
    _VivoxCoreInstancePINVOKE_vx_cpumonitor_stop_m3E7D49B2805D1125C185FFF7CA468F5C334DC867 in VivoxUnity.o
    "_CSharp_vx_get_dump_memory_interval", referenced from:
    _VivoxCoreInstance_vx_get_dump_memory_interval_m72AC04E91EA697ADD845A2B55962762736EDBD34 in VivoxUnity.o
    _VivoxCoreInstancePINVOKE_vx_get_dump_memory_interval_m4036DCE913F431D4FD146F3D01F705DCF7C65CB1 in VivoxUnity.o
    "_CSharp_vx_cpumonitor_stop_eater", referenced from:
    _VivoxCoreInstance_vx_cpumonitor_stop_eater_m48E8BE07F95B858FBE5DB1CBEFEED67E1BA40F75 in VivoxUnity.o
    _VivoxCoreInstancePINVOKE_vx_cpumonitor_stop_eater_m9DE7CDA25519811629DECC3652E59204DA0729BA in VivoxUnity.o
    "_CSharp_vx_cpumonitor_start", referenced from:
    _VivoxCoreInstance_vx_cpumonitor_start_mF94BD22670BDAFC04C22C81F68E3542813D521EE in VivoxUnity.o
    _VivoxCoreInstancePINVOKE_vx_cpumonitor_start_m8F97428F8940F55D8C6F6DAC7760B97CB6026089 in VivoxUnity.o
    ld: symbol(s) not found for architecture arm64
    clang: error: linker command failed with exit code 1 (use -v to see invocation)
    This is an urgent issue for us.

    I found a similar thread and it was resolved here, but it is not resolved in our environment.
    https://forum.unity.com/threads/vivox-ios-build-errors-undefined-symbol.1259277/
    Thank you
    =============================================================
    Japanese (same content)
    =============================================================
    iOSビルドでのVivoxエラー(Undefined symbols for architecture arm64)
    こんにちは。
    私たちのプロジェクトはUnityを使用しておりチャットツールとしてVivoxを追加する必要があります。
    現在、Androidビルドは成功するのですが、iOSビルドが成功しないという状況となっております。
    Unityでのビルド(xcodeプロジェクト作成)は成功しますが、Xcodeでのビルドで失敗します。
    UnityEditorでも正常に動作しております。(Platform: Android)
    =============
    環境
    =============
    Unity: 2021.3.3f1(Pro License)
    Vivox: com.unity.services.vivox-15.1.180001-pre.1.tgz
    Xcode: 13.0
    Packages/manifest.json
    "com.unity.services.vivox": "file:../VivoxAsset/com.unity.services.vivox-15.1.180001-pre.1.tgz"
    これまではVivoxのコア機能ファイルは"Assets/Application/Vivox"フォルダ配下に配置しておりましたが、Vivoxを新しいバージョンにするにあたりPackageManagerでの管理に切り替えました。
    また、PackageManagerに切り替える際、"Assets/Application/Vivox"フォルダは削除したため古いVivoxのファイルはプロジェクト内にな存在しない状態です。
    =============
    エラー
    =============
    Undefined symbols for architecture arm64:
    "_CSharp_vx_android_set_mic_mute", referenced from:
    _VivoxCoreInstance_vx_android_set_mic_mute_m1CC2A656083ACED004F555C740C1869F2353D81C in VivoxUnity.o
    _VivoxCoreInstancePINVOKE_vx_android_set_mic_mute_m16192BE8C97CB5E25DBF305599350B67CE32D0C6 in VivoxUnity.o
    "_CSharp_vx_cpumonitor_start_eater", referenced from:
    _VivoxCoreInstance_vx_cpumonitor_start_eater_mDD8FC500DF74FB5A3EEAC34A6D8C25B795849513 in VivoxUnity.o
    _VivoxCoreInstancePINVOKE_vx_cpumonitor_start_eater_m6278C28E1429525079B98793ED7CFD8D19491D38 in VivoxUnity.o
    "_CSharp_vx_cpumonitor_stop", referenced from:
    _VivoxCoreInstance_vx_cpumonitor_stop_m662582D5AA3C7E973FC77C948BFFB0C626B455C6 in VivoxUnity.o
    _VivoxCoreInstancePINVOKE_vx_cpumonitor_stop_m3E7D49B2805D1125C185FFF7CA468F5C334DC867 in VivoxUnity.o
    "_CSharp_vx_get_dump_memory_interval", referenced from:
    _VivoxCoreInstance_vx_get_dump_memory_interval_m72AC04E91EA697ADD845A2B55962762736EDBD34 in VivoxUnity.o
    _VivoxCoreInstancePINVOKE_vx_get_dump_memory_interval_m4036DCE913F431D4FD146F3D01F705DCF7C65CB1 in VivoxUnity.o
    "_CSharp_vx_cpumonitor_stop_eater", referenced from:
    _VivoxCoreInstance_vx_cpumonitor_stop_eater_m48E8BE07F95B858FBE5DB1CBEFEED67E1BA40F75 in VivoxUnity.o
    _VivoxCoreInstancePINVOKE_vx_cpumonitor_stop_eater_m9DE7CDA25519811629DECC3652E59204DA0729BA in VivoxUnity.o
    "_CSharp_vx_cpumonitor_start", referenced from:
    _VivoxCoreInstance_vx_cpumonitor_start_mF94BD22670BDAFC04C22C81F68E3542813D521EE in VivoxUnity.o
    _VivoxCoreInstancePINVOKE_vx_cpumonitor_start_m8F97428F8940F55D8C6F6DAC7760B97CB6026089 in VivoxUnity.o
    ld: symbol(s) not found for architecture arm64
    clang: error: linker command failed with exit code 1 (use -v to see invocation)

    これは私たちにとって早急に対応しなければならない問題です。

    類似しているスレッドを発見してこちらでは解決したとのことですが、私たちの環境では解決していません。
    https://forum.unity.com/threads/vivox-ios-build-errors-undefined-symbol.1259277/
    ありがとう