[opus] How to cross-compile opus-tools?

bat guano batguano999 at hotmail.com
Fri Oct 19 16:02:50 PDT 2012


Hi
Is it possible to cross-compile opus-tools with mingw and Ubuntu?

So far I have done this:-

# prepare
$ mkdir $HOME/source
$ mkdir $HOME/builds
$ export PATH="$PATH:$HOME/mingw-w64-i686/bin"
$ PKG_CONFIG_PATH="$HOME/builds/lib/pkgconfig"

# Install ogg
$ cd $HOME/source
$ svn co http://svn.xiph.org/trunk/ogg
$ cd ogg
$ ./autogen.sh && ./configure --prefix=$HOME/builds --host=i686-w64-mingw32 --disable-shared
$ make && make install

# Install opus
$ cd $HOME/source
$ git clone --depth 1 git://git.xiph.org/opus.git
$ cd opus
$ ./autogen.sh && ./configure --prefix=$HOME/builds --host=i686-w64-mingw32 --disable-shared
$ make && make install

# Try to compile opus-tools
$ cd $HOME/source
$ git clone --depth 1 git://git.xiph.org/opus-tools.git
$ cd opus-tools
$ ./autogen.sh && ./configure --prefix=$HOME/builds --host=i686-w64-mingw32


But if I now run "make" it throws up errors as below.
Any ideas what is causing this?
Am I missing some other libraries?



*******************************************************************
Type "make; make install" to compile and install
Type "make check" to run the test suite
make  all-recursive
make[1]: Entering directory `/home/user/source/opus-tools'
Making all in .
make[2]: Entering directory `/home/user/source/opus-tools'
  CC     src/opus_header.o
  CC     src/opusenc.o
  CC     src/resample.o
src/resample.c: In function ‘update_filter’:
src/resample.c:607:20: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
src/resample.c:688:23: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
src/resample.c:696:23: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
src/resample.c:699:20: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
src/resample.c:706:23: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
src/resample.c: In function ‘opustools_resampler_process_float’:
src/resample.c:872:21: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
src/resample.c:875:20: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
src/resample.c: In function ‘opustools_resampler_process_int’:
src/resample.c:928:19: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
src/resample.c:935:19: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
src/resample.c:945:16: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
  CC     src/audio-in.o
  CC     src/diag_range.o
  CC     src/lpc.o
  CC     win32/unicode_support.o
  CCLD   opusenc.exe
src/opusenc.o: In function `main':
/home/user/source/opus-tools/src/opusenc.c:301: undefined reference to `opus_get_version_string'
/home/user/source/opus-tools/src/opusenc.c:566: undefined reference to `opus_multistream_encoder_create'
/home/user/source/opus-tools/src/opusenc.c:577: undefined reference to `opus_multistream_encoder_ctl'
/home/user/source/opus-tools/src/opusenc.c:578: undefined reference to `opus_encoder_ctl'
/home/user/source/opus-tools/src/opusenc.c:580: undefined reference to `opus_strerror'
/home/user/source/opus-tools/src/opusenc.c:596: undefined reference to `opus_multistream_encoder_ctl'
/home/user/source/opus-tools/src/opusenc.c:602: undefined reference to `opus_multistream_encoder_ctl'
/home/user/source/opus-tools/src/opusenc.c:609: undefined reference to `opus_multistream_encoder_ctl'
/home/user/source/opus-tools/src/opusenc.c:616: undefined reference to `opus_multistream_encoder_ctl'
/home/user/source/opus-tools/src/opusenc.c:622: undefined reference to `opus_multistream_encoder_ctl'
src/opusenc.o:/home/user/source/opus-tools/src/opusenc.c:629: more undefined references to `opus_multistream_encoder_ctl' follow
src/opusenc.o: In function `main':
/home/user/source/opus-tools/src/opusenc.c:631: undefined reference to `opus_strerror'
/home/user/source/opus-tools/src/opusenc.c:646: undefined reference to `opus_multistream_encoder_ctl'
/home/user/source/opus-tools/src/opusenc.c:647: undefined reference to `opus_encoder_ctl'
/home/user/source/opus-tools/src/opusenc.c:639: undefined reference to `opus_multistream_encoder_ctl'
/home/user/source/opus-tools/src/opusenc.c:641: undefined reference to `opus_strerror'
/home/user/source/opus-tools/src/opusenc.c:659: undefined reference to `opus_multistream_encoder_ctl'
/home/user/source/opus-tools/src/opusenc.c:712: undefined reference to `ogg_stream_init'
/home/user/source/opus-tools/src/opusenc.c:727: undefined reference to `ogg_stream_packetin'
/home/user/source/opus-tools/src/opusenc.c:729: undefined reference to `ogg_stream_flush'
/home/user/source/opus-tools/src/opusenc.c:746: undefined reference to `ogg_stream_packetin'
/home/user/source/opus-tools/src/opusenc.c:750: undefined reference to `ogg_stream_flush'
/home/user/source/opus-tools/src/opusenc.c:796: undefined reference to `opus_multistream_encode_float'
/home/user/source/opus-tools/src/opusenc.c:814: undefined reference to `opus_multistream_encoder_ctl'
/home/user/source/opus-tools/src/opusenc.c:815: undefined reference to `opus_encoder_ctl'
/home/user/source/opus-tools/src/opusenc.c:864: undefined reference to `ogg_stream_packetin'
/home/user/source/opus-tools/src/opusenc.c:878: undefined reference to `ogg_stream_flush_fill'
/home/user/source/opus-tools/src/opusenc.c:881: undefined reference to `ogg_page_packets'
/home/user/source/opus-tools/src/opusenc.c:881: undefined reference to `ogg_page_granulepos'
/home/user/source/opus-tools/src/opusenc.c:828: undefined reference to `ogg_stream_flush_fill'
/home/user/source/opus-tools/src/opusenc.c:830: undefined reference to `ogg_page_packets'
/home/user/source/opus-tools/src/opusenc.c:830: undefined reference to `ogg_page_granulepos'
/home/user/source/opus-tools/src/opusenc.c:879: undefined reference to `ogg_stream_pageout_fill'
/home/user/source/opus-tools/src/opusenc.c:798: undefined reference to `opus_strerror'
/home/user/source/opus-tools/src/opusenc.c:955: undefined reference to `opus_multistream_encoder_destroy'
/home/user/source/opus-tools/src/opusenc.c:956: undefined reference to `ogg_stream_clear'
/home/user/source/opus-tools/src/opusenc.c:674: undefined reference to `opus_multistream_encoder_ctl'
/home/user/source/opus-tools/src/opusenc.c:661: undefined reference to `opus_strerror'
/home/user/source/opus-tools/src/opusenc.c:569: undefined reference to `opus_strerror'
/home/user/source/opus-tools/src/opusenc.c:611: undefined reference to `opus_strerror'
/home/user/source/opus-tools/src/opusenc.c:604: undefined reference to `opus_strerror'
/home/user/source/opus-tools/src/opusenc.c:598: undefined reference to `opus_strerror'
src/opusenc.o:/home/user/source/opus-tools/src/opusenc.c:624: more undefined references to `opus_strerror' follow
src/diag_range.o: In function `opus_packet_parse_impl':
/home/user/source/opus-tools/src/diag_range.c:87: undefined reference to `opus_packet_get_samples_per_frame'
src/diag_range.o: In function `save_range':
/home/user/source/opus-tools/src/diag_range.c:237: undefined reference to `opus_packet_get_samples_per_frame'
/home/user/source/opus-tools/src/diag_range.c:239: undefined reference to `opus_packet_get_bandwidth'
collect2: error: ld returned 1 exit status
make[2]: *** [opusenc.exe] Error 1
make[2]: Leaving directory `/home/user/source/opus-tools'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/user/source/opus-tools'
make: *** [all] Error 2
user at xubuntu:~/source/opus-tools$ 

 		 	   		  


More information about the opus mailing list