SDL2_mixer在mac(运行时)上的init初始化失败
问题描述:
在mac上遇到困难时刻的Sdl2。 代码编译良好,但在运行时Mix_init失败,此错误:SDL2_mixer在mac(运行时)上的init初始化失败
OGG Support Not Available
奇怪的事情,因为我安装sdl2_mixer这样的:
brew install SDL2_mixer --with-libvobis
这是初始化
int flags = MIX_INIT_OGG;
int initted = Mix_Init(flags);
if ((initted & flags) != flags)
{
printf("Mix_Init: Failed to init SDL_Mixer\n");
printf("Mix_Init: %s\n", Mix_GetError());
MSG_EXIT("Exiting ",1);
}
答
代码好吧,现在从任何人的答案。看起来不是一个常见的错误。挖掘之后,似乎SDL2_mixer在MacOs上无法正常工作。 我使用了SDL2_mixer-1.2,并没有问题。当然,我需要改变一点点的代码。 幸运的是只有初始化需要改变。 mixer1.2和mixer2中的所有功能都相同。 但是有一些小事情要做。 - 删除sdl_mixer(如果已安装) - 安装其他一些依赖项 - 重新安装sdl_mixer 请勿删除SDL2_MIXER。 我不知道它是如何工作,为什么我不应该删除它,我只是意识到,当我删除它我有其他疯狂的错误,即使我编译wil -lsdl_mixer而不是-lsdl2_mixer。
这里酿造命令
brew install sdl_mixer --with-libvorbis
brew uninstall libvorbis libogg //it may ask you de remove sdl_mixer
然后
brew install sdl sdl_image sdl_ttf portmidi hg git
brew reinstall sdl_mixer --with-libvorbis
希望这将帮助别人。