steam-audio icon indicating copy to clipboard operation
steam-audio copied to clipboard

No native support for apple silicon (macOS-arm64)

Open danielkariv opened this issue 3 years ago • 1 comments

I tried to build the sample code from here :https://valvesoftware.github.io/steam-audio/doc/capi/getting-started.html but I can't link the given lib (photon) because it is built for x86_64 and not arm64. Adding support for arm64 on macOS should fix this issue.

OS version: MacOS Monterey 12.1 Chip: Apple M1 This is the error log I get after trying to compile it with g++(gcc).

[build] FAILED: SteamAudioLearning 
[build] : && /opt/homebrew/bin/g++-11 -g -arch arm64 -isysroot /Library/Developer/CommandLineTools/SDKs/MacOSX12.1.sdk -Wl,-search_paths_first -Wl,-headerpad_max_install_names  CMakeFiles/SteamAudioLearning.dir/main.cpp.o -o SteamAudioLearning  -Wl,-rpath,[path_to_directory]/steamaudio/lib/osx  /[path_to_directory]/steamaudio/lib/osx/libphonon.dylib && :
[build] ld: warning: ignoring file [path_to_directory]/steamaudio/lib/osx/libphonon.dylib, building for macOS-arm64 but attempting to link with file built for macOS-x86_64
[build] Undefined symbols for architecture arm64:
[build]   "_iplAudioBufferAllocate", referenced from:
[build]       _main in main.cpp.o
[build]   "_iplAudioBufferFree", referenced from:
[build]       _main in main.cpp.o
[build]   "_iplAudioBufferInterleave", referenced from:
[build]       _main in main.cpp.o
[build]   "_iplBinauralEffectApply", referenced from:
[build]       _main in main.cpp.o
[build]   "_iplBinauralEffectCreate", referenced from:
[build]       _main in main.cpp.o
[build]   "_iplBinauralEffectRelease", referenced from:
[build]       _main in main.cpp.o
[build]   "_iplContextCreate", referenced from:
[build]       _main in main.cpp.o
[build]   "_iplContextRelease", referenced from:
[build]       _main in main.cpp.o
[build]   "_iplHRTFCreate", referenced from:
[build]       _main in main.cpp.o
[build]   "_iplHRTFRelease", referenced from:
[build]       _main in main.cpp.o

danielkariv avatar Jan 22 '22 18:01 danielkariv

We could really use an macOS arm build as well.

mbechard avatar Aug 12 '22 02:08 mbechard

Hi all,

I left a post about this on the Steam Audio forum as well, but I thought I would follow up here with more detail in case it helps with resolving the issue more quickly. Here are the errors I am getting when I import the Steam Audio 4.1.3 package into Unity on an M1 Max MacBook Pro running macOS 13.2:

Plugins: Couldn't open /Users/---/Desktop/Steam Test/Assets/Plugins/SteamAudio/Binaries/macOS/audioplugin_phonon.bundle/Contents/MacOS/audioplugin_phonon, error: dlopen(/Users/---/Desktop/Steam Test/Assets/Plugins/SteamAudio/Binaries/macOS/audioplugin_phonon.bundle/Contents/MacOS/audioplugin_phonon, 0x0002): tried: '/Users/---/Desktop/Steam Test/Assets/Plugins/SteamAudio/Binaries/macOS/audioplugin_phonon.bundle/Contents/MacOS/audioplugin_phonon' (mach-o file, but is an incompatible architecture (have 'x86_64', need 'arm64')), '/System/Volumes/Preboot/Cryptexes/OS/Users/---/Desktop/Steam Test/Assets/Plugins/SteamAudio/Binaries/macOS/audioplugin_phonon.bundle/Contents/MacOS/audioplugin_phonon' (no such file), '/Users/---/Desktop/Steam Test/Assets/Plugins/SteamAudio/Binaries/macOS/audioplugin_phonon.bundle/Contents/MacOS/audioplugin_phonon' (mach-o file, but is an incompatible architecture (have 'x86_64', need 'arm64'))

Plugins: Couldn't open Assets/Plugins/SteamAudio/Binaries/macOS/audioplugin_phonon.bundle/Contents/MacOS/audioplugin_phonon, error: dlopen(Assets/Plugins/SteamAudio/Binaries/macOS/audioplugin_phonon.bundle/Contents/MacOS/audioplugin_phonon, 0x0002): tried: 'Assets/Plugins/SteamAudio/Binaries/macOS/audioplugin_phonon.bundle/Contents/MacOS/audioplugin_phonon' (mach-o file, but is an incompatible architecture (have 'x86_64', need 'arm64')), '/System/Volumes/Preboot/Cryptexes/OSAssets/Plugins/SteamAudio/Binaries/macOS/audioplugin_phonon.bundle/Contents/MacOS/audioplugin_phonon' (no such file), '/Applications/Unity/Hub/Editor/2021.3.8f1/Unity.app/Contents/Frameworks/Assets/Plugins/SteamAudio/Binaries/macOS/audioplugin_phonon.bundle/Contents/MacOS/audioplugin_phonon' (no such file), '/Applications/Unity/Hub/Editor/2021.3.8f1/Unity.app/Contents/Frameworks/Assets/Plugins/SteamAudio/Binaries/macOS/audioplugin_phonon.bundle/Contents/MacOS/audioplugin_phonon' (no such file), '/usr/lib/Assets/Plugins/SteamAudio/Binaries/macOS/audioplugin_phonon.bundle/Contents/MacOS/audioplugin_phonon' (no such file, not in dyld cache), 'Assets/Plugins/SteamAudio/Binaries/macOS/audioplugin_phonon.bundle/Contents/MacOS/audioplugin_phonon' (mach-o file, but is an incompatible architecture (have 'x86_64', need 'arm64')), '/Users/---/Desktop/Steam Test/Assets/Plugins/SteamAudio/Binaries/macOS/audioplugin_phonon.bundle/Contents/MacOS/audioplugin_phonon' (mach-o file, but is an incompatible architecture (have 'x86_64', need 'arm64')), '/System/Volumes/Preboot/Cryptexes/OS/Users/---/Desktop/Steam Test/Assets/Plugins/SteamAudio/Binaries/macOS/audioplugin_phonon.bundle/Contents/MacOS/audioplugin_phonon' (no such file), '/Users/---/Desktop/Steam Test/Assets/Plugins/SteamAudio/Binaries/macOS/audioplugin_phonon.bundle/Contents/MacOS/audioplugin_phonon' (mach-o file, but is an incompatible architecture (have 'x86_64', need 'arm64'))

Thanks for your help with this!

anilcamci avatar Mar 06 '23 22:03 anilcamci

Thanks @kisak-valve for directing me to this thread. Are there any updates on when Apple Silicon support might be provided for Steam Audio users?

anilcamci avatar Mar 06 '23 22:03 anilcamci

We've just released v4.1.4, which adds support for Apple Silicon in macOS builds: https://github.com/ValveSoftware/steam-audio/releases/tag/v4.1.4.

lakulish avatar Mar 27 '23 16:03 lakulish