So I tried to compile as hcs told us but it won't work. The error is that some vorbis utils are accessed and then the members aren't available:
coding/../vgmstream.h:899:3: note: 'aix_codec_data' declared here } aix_codec_data; ^ coding/wwise_vorbis_utils.c:80:69: error: no member named 'header_type' in 'aix_codec_data' header_size = wwise_vorbis_get_header(streamFile, offset, data->header_t... ~~~~ ^ coding/wwise_vorbis_utils.c:112:103: error: unknown type name 'vorbis_codec_data'; did you mean 'aix_codec_data'? ...obufsize, STREAMFILE *streamFile, off_t offset, vorbis_codec_data * data... ^~~~~~~~~~~~~~~~~ aix_codec_data coding/../vgmstream.h:899:3: note: 'aix_codec_data' declared here } aix_codec_data; ^ coding/wwise_vorbis_utils.c:122:69: error: no member named 'header_type' in 'aix_codec_data' header_size = wwise_vorbis_get_header(streamFile, offset, data->header_t... ~~~~ ^ coding/wwise_vorbis_utils.c:166:105: error: unknown type name 'vorbis_codec_data'; did you mean 'aix_codec_data'? ...* iw, STREAMFILE *streamFile, off_t offset, vorbis_codec_data * data, in... ^~~~~~~~~~~~~~~~~ aix_codec_data coding/../vgmstream.h:899:3: note: 'aix_codec_data' declared here } aix_codec_data; ^ coding/wwise_vorbis_utils.c:170:68: error: no member named 'header_type' in 'aix_codec_data' header_size = wwise_vorbis_get_header(streamFile,offset, data->heade... ~~~~ ^ coding/wwise_vorbis_utils.c:184:15: error: no member named 'packet_type' in 'aix_codec_data' if (data->packet_type == MODIFIED) { ~~~~ ^ coding/wwise_vorbis_utils.c:184:30: error: use of undeclared identifier 'MODIFIED' if (data->packet_type == MODIFIED) { ^ coding/wwise_vorbis_utils.c:188:20: error: no member named 'mode_blockflag' in 'aix_codec_data' if (!data->mode_blockflag) { /* config error */ ~~~~ ^ coding/wwise_vorbis_utils.c:198:27: error: no member named 'mode_bits' in 'aix_codec_data' r_bits(iw, data->mode_bits,&mode_number); /* max 6b */ ~~~~ ^ fatal error: too many errors emitted, stopping now [-ferror-limit=] 2 warnings and 20 errors generated. make[1]: *** [coding/wwise_vorbis_utils.o] Error 1 make: *** [libvgmstream.a] Error 2
I'll upload the fix soon but meanwhile you can do it like this: - go to wwise_decoder_utils.c and put this at the beginning and end: #ifdef VGM_USE_VORBIS ... (code) #endif
- go to sqex_scd.c and add this at the lines: l.23: #ifdef VGM_USE_VORBIS ... l.46: #endif ... l.551: #ifdef VGM_USE_VORBIS ... l.590: #endif
You can now pass these flags to the compiler instead of editting vgmstream.h, btw: EXTRA_CFLAGS="-DVGM_DISABLE_VORBIS -DVGM_DISABLE_MPEG"
/Applications/Xcode.app/Contents/Developer/usr/bin/make -C ../src libvgmstream.a make[1]: `libvgmstream.a' is up to date. gcc -Wall -O3 -I../ext_includes -DUSE_ALLOCA -DVGM_USE_MAIATRAC3PLUS -L../src -L ../ext_libs -lvgmstream -lat3plusdecoder -lpthread -lm "-DVERSION=\"`../version.sh`\"" test.c -L../src -L ../ext_libs -lvgmstream -lat3plusdecoder -lpthread -lm -o vgmstream ld: library not found for -lat3plusdecoder clang: error: linker command failed with exit code 1 (use -v to see invocation) make: *** [test.exe] Error 1
And if I remove the -lat3plusdecoder argument i get this: make[1]: `libvgmstream.a' is up to date. gcc -Wall -O3 -I../ext_includes -DUSE_ALLOCA -DVGM_USE_MAIATRAC3PLUS -L../src -L ../ext_libs -lvgmstream -lpthread -lm "-DVERSION=\"`../version.sh`\"" test.c -L../src -L ../ext_libs -lvgmstream -lpthread -lm -o vgmstream Undefined symbols for architecture x86_64: "_Atrac3plusDecoder_closeContext", referenced from: _reset_at3plus in libvgmstream.a(at3_decoder.o) _free_at3plus in libvgmstream.a(at3_decoder.o) "_Atrac3plusDecoder_decodeFrame", referenced from: _decode_at3plus in libvgmstream.a(at3_decoder.o) "_Atrac3plusDecoder_openContext", referenced from: _reset_at3plus in libvgmstream.a(at3_decoder.o) _init_vgmstream_riff in libvgmstream.a(riff.o) "_mpg123_decode", referenced from: _init_mpeg_codec_data in libvgmstream.a(mpeg_decoder.o) _decode_mpeg in libvgmstream.a(mpeg_decoder.o) _decode_fake_mpeg2_l2 in libvgmstream.a(mpeg_decoder.o) "_mpg123_delete", referenced from: _free_mpeg in libvgmstream.a(mpeg_decoder.o) _init_mpg123_handle in libvgmstream.a(mpeg_decoder.o) "_mpg123_feedseek", referenced from: _reset_mpeg in libvgmstream.a(mpeg_decoder.o) _seek_mpeg in libvgmstream.a(mpeg_decoder.o) "_mpg123_getformat", referenced from: _init_mpeg_codec_data in libvgmstream.a(mpeg_decoder.o) "_mpg123_info", referenced from: _init_mpeg_codec_data in libvgmstream.a(mpeg_decoder.o) _mpeg_bytes_to_samples in libvgmstream.a(mpeg_decoder.o) "_mpg123_init", referenced from: _init_mpg123_handle in libvgmstream.a(mpeg_decoder.o) "_mpg123_new", referenced from: _init_mpg123_handle in libvgmstream.a(mpeg_decoder.o) "_mpg123_open_feed", referenced from: _init_mpeg_codec_data in libvgmstream.a(mpeg_decoder.o) _init_mpg123_handle in libvgmstream.a(mpeg_decoder.o) "_mpg123_param", referenced from: _mpeg_set_error_logging in libvgmstream.a(mpeg_decoder.o) _init_mpg123_handle in libvgmstream.a(mpeg_decoder.o) "_ov_clear", referenced from: _free_ogg_vorbis in libvgmstream.a(ogg_vorbis_decoder.o) _init_vgmstream_ogg_vorbis_callbacks in libvgmstream.a(ogg_vorbis_file.o) "_ov_comment", referenced from: _init_vgmstream_ogg_vorbis_callbacks in libvgmstream.a(ogg_vorbis_file.o) "_ov_info", referenced from: _init_vgmstream_ogg_vorbis_callbacks in libvgmstream.a(ogg_vorbis_file.o) "_ov_open_callbacks", referenced from: _init_vgmstream_ogg_vorbis_callbacks in libvgmstream.a(ogg_vorbis_file.o) "_ov_pcm_seek", referenced from: _reset_ogg_vorbis in libvgmstream.a(ogg_vorbis_decoder.o) "_ov_pcm_seek_lap", referenced from: _seek_ogg_vorbis in libvgmstream.a(ogg_vorbis_decoder.o) "_ov_pcm_total", referenced from: _init_vgmstream_ogg_vorbis_callbacks in libvgmstream.a(ogg_vorbis_file.o) "_ov_read", referenced from: _decode_ogg_vorbis in libvgmstream.a(ogg_vorbis_decoder.o) "_ov_test_callbacks", referenced from: _init_vgmstream_ogg_vorbis_callbacks in libvgmstream.a(ogg_vorbis_file.o) "_vorbis_block_init", referenced from: _init_fsb_vorbis_codec_data in libvgmstream.a(fsb_vorbis_decoder.o) _init_ogl_vorbis_codec_data in libvgmstream.a(ogl_vorbis_decoder.o) _init_wwise_vorbis_codec_data in libvgmstream.a(wwise_vorbis_decoder.o) "_vorbis_comment_clear", referenced from: _init_fsb_vorbis_codec_data in libvgmstream.a(fsb_vorbis_decoder.o) _free_fsb_vorbis in libvgmstream.a(fsb_vorbis_decoder.o) _init_ogl_vorbis_codec_data in libvgmstream.a(ogl_vorbis_decoder.o) _free_ogl_vorbis in libvgmstream.a(ogl_vorbis_decoder.o) _init_wwise_vorbis_codec_data in libvgmstream.a(wwise_vorbis_decoder.o) _free_wwise_vorbis in libvgmstream.a(wwise_vorbis_decoder.o) "_vorbis_comment_init", referenced from: _init_fsb_vorbis_codec_data in libvgmstream.a(fsb_vorbis_decoder.o) _init_ogl_vorbis_codec_data in libvgmstream.a(ogl_vorbis_decoder.o) _init_wwise_vorbis_codec_data in libvgmstream.a(wwise_vorbis_decoder.o) "_vorbis_dsp_clear", referenced from: _init_fsb_vorbis_codec_data in libvgmstream.a(fsb_vorbis_decoder.o) _free_fsb_vorbis in libvgmstream.a(fsb_vorbis_decoder.o) _init_ogl_vorbis_codec_data in libvgmstream.a(ogl_vorbis_decoder.o) _free_ogl_vorbis in libvgmstream.a(ogl_vorbis_decoder.o) _init_wwise_vorbis_codec_data in libvgmstream.a(wwise_vorbis_decoder.o) _free_wwise_vorbis in libvgmstream.a(wwise_vorbis_decoder.o) "_vorbis_info_clear", referenced from: _init_fsb_vorbis_codec_data in libvgmstream.a(fsb_vorbis_decoder.o) _free_fsb_vorbis in libvgmstream.a(fsb_vorbis_decoder.o) _init_ogl_vorbis_codec_data in libvgmstream.a(ogl_vorbis_decoder.o) _free_ogl_vorbis in libvgmstream.a(ogl_vorbis_decoder.o) _init_wwise_vorbis_codec_data in libvgmstream.a(wwise_vorbis_decoder.o) _free_wwise_vorbis in libvgmstream.a(wwise_vorbis_decoder.o) "_vorbis_info_init", referenced from: _init_fsb_vorbis_codec_data in libvgmstream.a(fsb_vorbis_decoder.o) _init_ogl_vorbis_codec_data in libvgmstream.a(ogl_vorbis_decoder.o) _init_wwise_vorbis_codec_data in libvgmstream.a(wwise_vorbis_decoder.o) "_vorbis_synthesis", referenced from: _decode_fsb_vorbis in libvgmstream.a(fsb_vorbis_decoder.o) _decode_ogl_vorbis in libvgmstream.a(ogl_vorbis_decoder.o) _decode_wwise_vorbis in libvgmstream.a(wwise_vorbis_decoder.o) "_vorbis_synthesis_blockin", referenced from: _decode_fsb_vorbis in libvgmstream.a(fsb_vorbis_decoder.o) _decode_ogl_vorbis in libvgmstream.a(ogl_vorbis_decoder.o) _decode_wwise_vorbis in libvgmstream.a(wwise_vorbis_decoder.o) "_vorbis_synthesis_headerin", referenced from: _init_fsb_vorbis_codec_data in libvgmstream.a(fsb_vorbis_decoder.o) _init_ogl_vorbis_codec_data in libvgmstream.a(ogl_vorbis_decoder.o) _init_wwise_vorbis_codec_data in libvgmstream.a(wwise_vorbis_decoder.o) "_vorbis_synthesis_init", referenced from: _init_fsb_vorbis_codec_data in libvgmstream.a(fsb_vorbis_decoder.o) _init_ogl_vorbis_codec_data in libvgmstream.a(ogl_vorbis_decoder.o) _init_wwise_vorbis_codec_data in libvgmstream.a(wwise_vorbis_decoder.o) "_vorbis_synthesis_pcmout", referenced from: _decode_fsb_vorbis in libvgmstream.a(fsb_vorbis_decoder.o) _decode_ogl_vorbis in libvgmstream.a(ogl_vorbis_decoder.o) _decode_wwise_vorbis in libvgmstream.a(wwise_vorbis_decoder.o) "_vorbis_synthesis_read", referenced from: _decode_fsb_vorbis in libvgmstream.a(fsb_vorbis_decoder.o) _decode_ogl_vorbis in libvgmstream.a(ogl_vorbis_decoder.o) _decode_wwise_vorbis in libvgmstream.a(wwise_vorbis_decoder.o) "_vorbis_synthesis_restart", referenced from: _reset_fsb_vorbis in libvgmstream.a(fsb_vorbis_decoder.o) _seek_fsb_vorbis in libvgmstream.a(fsb_vorbis_decoder.o) _reset_ogl_vorbis in libvgmstream.a(ogl_vorbis_decoder.o) _seek_ogl_vorbis in libvgmstream.a(ogl_vorbis_decoder.o) _reset_wwise_vorbis in libvgmstream.a(wwise_vorbis_decoder.o) _seek_wwise_vorbis in libvgmstream.a(wwise_vorbis_decoder.o) ld: symbol(s) not found for architecture x86_64 clang: error: linker command failed with exit code 1 (use -v to see invocation) make: *** [test.exe] Error 1