我似乎无法让 SDL_Mixer 在启用 OGG 支持的情况下进行初始化。我知道我必须与 libogg、libvorbis 和 libvorbisfile 链接,但它仍然不起作用。我有这三个库的.dylib
s、.framework
s 和.a
s,我都试过了。
我将 dylibs/frameworks 复制到构建阶段选项卡中应用程序包的 Frameworks 文件夹中。
我已在构建设置选项卡中设置Runpath Search Paths
为。@executable_path/../Frameworks
但Mix_Init(MIX_INIT_OGG)
不断返回错误OGG support not available
。
我正在使用所有提到的库的最新 Homebrew 版本。我不确定还能尝试什么。
我已经完成了一个以 300MB 的wav
s 为音乐的游戏。
更新
我设法将一些 Objective C 与 C++ 混合在一起,并获得了一些声音,AVAudioPlayer
但这是可怕的代码。我必须强制转换void *
以确保我的音乐播放器类与我的 C++ 代码库兼容。垃圾收集器太烦人了。它所做的只是妨碍你。你必须用桥牌来对抗它。
我真的很想使用 SDL_Mixer 或一个简单的 C 库。