Page 1 of 1

cross compiling libbluray for windows - only get bd_info.exe but no dll file

Posted: 25 Oct 2015 01:27
by nalor
After I managed to successfully compile libaacs for win-x86 and win-x64 I started to compile libbluray 0.90 for win-x86 (my build environment is still a ubuntu system)

I've executed the following steps, but although I don't get an error at any step I don't get a dll-file at the end, only the bd_info.exe ... what to I have to change to get a libbluray.dll file?

I noticed there's an entry 'enable_win32_dll=no' in the configure file - I've already tried to set this entry to 'yes' and recompile libbluray, but it didn't change anything.... at the moment I'm honestly clueless what else I can try.. :(

Here are the steps I've executed so far (it took me hours to get so far ... ):

Preparation:

Code: Select all

makedir /libbluray_cmp makedir /libbluray_cmp/installx86 export BUILDDIR=/libbluray_cmp/installx86 apt-get install binutils-avr apt-get install openjdk-7-jdk
(binutils-avr is necessary for ZLIB, openjdk-7-jdk is necessary for LIBBLURAY)

Compiling LIBXML2:

Code: Select all

curl ftp://xmlsoft.org/libxml2/LATEST_LIBXML2 | tar xvz cd libxml2-*/ ./configure --host=i686-w64-mingw32 --prefix=$BUILDDIR/ --without-python make make install cd ..
Compiling ZLIB:

Code: Select all

curl http://zlib.net/zlib-1.2.8.tar.gz | tar xvz cd zlib-1.2.8/ BINARY_PATH=$BUILDDIR/bin INCLUDE_PATH=$BUILDDIR/include LIBRARY_PATH=$BUILDDIR/lib make install -fwin32/Makefile.gcc SHARED_MODE=1 PREFIX=i686-w64-mingw32- cd..
Compiling LIBPNG:

Code: Select all

curl -L http://sourceforge.net/projects/libpng/files/libpng16/1.6.18/libpng-1.6.18.tar.xz/download | tar xvJ ./configure --host=i686-w64-mingw32 --prefix=$BUILDDIR/ PKG_CONFIG_PATH=$BUILDDIR/lib/pkgconfig/ ZLIBINC=$BUILDDIR/include CPPFLAGS="-I$BUILDDIR/include" LDFLAGS=-L$BUILDDIR/lib LDFLAGS=-L$BUILDDIR/lib make make install cd ..
Compiling FREETYPE2:

Code: Select all

curl -L http://download.savannah.gnu.org/releases/freetype/freetype-2.6.1.tar.bz2 | tar xvj cd freetype-2.6.1 ./configure --host=i686-w64-mingw32 --prefix=$BUILDDIR/ PKG_CONFIG_PATH=$BUILDDIR/lib/pkgconfig/ make make install cd ..
Compiling LIBBLURAY:

Code: Select all

curl ftp://ftp.videolan.org/pub/videolan/libbluray/0.9.0/libbluray-0.9.0.tar.bz2 | tar xvj cd libbluray-0.9.0/ ./configure --host=i686-w64-mingw32 --prefix=$BUILDDIR/ --enable-udf PKG_CONFIG_PATH=$BUILDDIR/lib/pkgconfig/ make make install cd ..
Finally I find 'bd_info.exe' together with 'libfreetype-6.dll', 'libpn16-16.dll', 'zlib1.dll' and 'libxml2-2.dll' in the directory /libbluray_cmp/installx86/bin and when I copy them to my windows8 computer I can execute the bd_info file without any problems... but how can I create the libbluray.dll file?

Please give me a hint into the right direction - thanks!

Re: cross compiling libbluray for windows - only get bd_info.exe but no dll file

Posted: 26 Oct 2015 17:40
by Jean-Baptiste Kempf
try --enable-shared in the libbluray configure.

Re: cross compiling libbluray for windows - only get bd_info.exe but no dll file

Posted: 26 Oct 2015 22:37
by nalor
I've tried this already - and also in combination with --disable-static, but the result is always the same... (and enable-shared is enabled by default - so it shouldn't make a difference at all.. ).

I'm still clueless.. :(

Re: cross compiling libbluray for windows - only get bd_info.exe but no dll file

Posted: 30 Oct 2015 18:40
by Jean-Baptiste Kempf
Why do you need to compile it? Can't you use the contribs?