[opus] Building opusfile as a shared library

Timothy B. Terriberry tterribe at xiph.org
Wed Jul 26 02:52:03 UTC 2017

Zuzu Typ wrote:
> This is most likely because opusfile is supposed to be built as a
> static-library.

You'll need an export list for all of the functions in 
include/opusfile.h. The best way to do this is to create a .def file 
listing the function names, which could live in, e.g., win32/VS2015 
(patches welcome). Ideally these would be separate for libopusfile and 
libopusurl (to allow building the former without the latter).

> I wonder how mozilla manages to build it.

Ralph doesn't use Visual Studio. He uses mingw32 instead. The procedure 
is documented in doc/release.txt.

One of the major reasons for this is that compiling OpenSSL with Visual 
Studio is difficult and complicated (enough that none of us have tried 
to figure out how to do it). If you don't need URL support, you can skip 
that. However, you'll still need to depend on libopus and libogg. Those 
three libraries are the only non-platform dependencies.

More information about the opus mailing list