I tested the operation on my Win7 laptop at work: installed the MSYS/MinGW package to C:\TEMP\MSYS and in fstab set the /mingw mount point to c:/temp/msys/mingw. The directory structure is kind of backwards like xnor mentioned, MinGW is installed under MSYS.
It seems that everything that is readily installed, is installed under the MSYS root. After installing, pkg-config --list-all will list
$ pkg-config --list-all
liblzma liblzma - General purpose data compression library
libarchive libarchive - library that can create and read several streaming archive formats
openssl OpenSSL - Secure Sockets Layer and cryptography libraries and tools
guile-1.8 GNU Guile - GNU's Ubiquitous Intelligent Language for Extension
libcrypto OpenSSL-libcrypto - OpenSSL cryptography library
zlib zlib - zlib compression library
libxml-2.0 libXML - libXML library version2.
autoopts AutoOpts - A semi-automated generated/library option parser
minizip minizip - Minizip zip file manipulation library
libssl OpenSSL - Secure Sockets Layer and cryptography libraries
If I now try - without setting a specific path to pkgconfig - to simply configure, make and install, everything goes fine and items appear in the pkg-config list until the make of opustools which fails as I've posted. Is this just a "feature" of compiling it with this particular toolset or is there something wrong with the setup?
Extracting pkgconfig to the path xnor mentioned (which didn't exist in the MSYS package) and setting the environment variable, I was able to compile all the necessary libraries and executables. During make of opustools, I did get these warnings:
$ make
make all-recursive
make[1]: Entering directory `/c/temp/sources/opus-tools-0.1.9'
Making all in .
make[2]: Entering directory `/c/temp/sources/opus-tools-0.1.9'
CC src/opusenc-opus_header.o
CC src/opusenc-opusenc.o
CC src/opusenc-picture.o
CC src/opusenc-resample.o
src/resample.c: In function 'update_filter':
src/resample.c:607:20: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
for (j=0;j<st->filt_len;j++)
^
src/resample.c:688:23: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
for (j=0;j<st->magic_samples[i];j++)
^
src/resample.c:696:23: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
for (j=0;j<olen-1;j++)
^
src/resample.c:699:20: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
for (;j<st->filt_len-1;j++)
^
src/resample.c:706:23: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
for (j=0;j<st->filt_len-1+st->magic_samples[i];j++)
^
src/resample.c: In function 'opustools_resampler_process_float':
src/resample.c:872:21: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
for(j=0;j<ichunk;++j)
^
src/resample.c:875:20: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
for(j=0;j<ichunk;++j)
^
src/resample.c: In function 'opustools_resampler_process_int':
src/resample.c:928:19: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
for(j=0;j<ichunk;++j)
^
src/resample.c:935:19: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
for(j=0;j<ichunk;++j)
^
src/resample.c:945:16: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
for (j=0;j<ochunk+omagic;++j)
^
CC src/opusenc-audio-in.o
CC src/opusenc-diag_range.o
CC src/opusenc-flac.o
CC src/opusenc-lpc.o
CC win32/opusenc-unicode_support.o
CCLD opusenc.exe
CC src/opusdec-opus_header.o
CC src/opusdec-wav_io.o
CC src/opusdec-wave_out.o
CC src/opusdec-opusdec.o
src/opusdec.c: In function 'main':
src/opusdec.c:891:20: warning: 'opus_serialno' may be used uninitialized in this
function [-Wmaybe-uninitialized]
fprintf(stderr,"\nError: Apparent chaining without changing
serial number (%" I64FORMAT "==%" I64FORMAT ").\n",
^
CC src/opusdec-resample.o
src/resample.c: In function 'update_filter':
src/resample.c:607:20: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
for (j=0;j<st->filt_len;j++)
^
src/resample.c:688:23: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
for (j=0;j<st->magic_samples[i];j++)
^
src/resample.c:696:23: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
for (j=0;j<olen-1;j++)
^
src/resample.c:699:20: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
for (;j<st->filt_len-1;j++)
^
src/resample.c:706:23: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
for (j=0;j<st->filt_len-1+st->magic_samples[i];j++)
^
src/resample.c: In function 'opustools_resampler_process_float':
src/resample.c:872:21: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
for(j=0;j<ichunk;++j)
^
src/resample.c:875:20: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
for(j=0;j<ichunk;++j)
^
src/resample.c: In function 'opustools_resampler_process_int':
src/resample.c:928:19: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
for(j=0;j<ichunk;++j)
^
src/resample.c:935:19: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
for(j=0;j<ichunk;++j)
^
src/resample.c:945:16: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
for (j=0;j<ochunk+omagic;++j)
^
CC src/opusdec-diag_range.o
CC win32/opusdec-unicode_support.o
CCLD opusdec.exe
CC src/opusinfo-opus_header.o
CC src/opusinfo-opusinfo.o
CC src/opusinfo-info_opus.o
CC src/opusinfo-picture.o
CC win32/opusinfo-unicode_support.o
CCLD opusinfo.exe
CC src/opusrtp.o
CCLD opusrtp.exe
make[2]: Leaving directory `/c/temp/sources/opus-tools-0.1.9'
make[1]: Leaving directory `/c/temp/sources/opus-tools-0.1.9'
Is this anything to worry about? My sources are always 48kHz so resampling won't be applied.
The other remaining question now is, should I recompile those pre-compiled libraries to suggested location /usr/local or can I copy them under /usr/local and edit the paths in .pc files accordingly?