Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
cygwin [2019/05/18 15:13] beandog |
cygwin [2019/05/18 17:51] (current) beandog |
||
---|---|---|---|
Line 1: | Line 1: | ||
====== Cygwin ====== | ====== Cygwin ====== | ||
- | It might be possible to install ''libbluray'' on a Cygwin installation. It requires some patience, and I'm not sure if I'm doing it right, plus I'm using a few hacks instead of fixing autoconf correctly. | + | I've been playing with getting bluray_info working and installed on Cygwin. I don't know much about porting to it, but I can get the dependencies installed with some hacks. |
You'll need these Cygwin development libraries and packages installed: | You'll need these Cygwin development libraries and packages installed: | ||
Line 18: | Line 18: | ||
You will also need the Java Development Kit installed. | You will also need the Java Development Kit installed. | ||
- | Download and install [[https://www.videolan.org/developers/libaacs.html|libaacs]] as normal: | + | Download and install [[https://www.videolan.org/developers/libaacs.html|libaacs]] into ''/usr'' instead of ''/usr/local'': |
<code> | <code> | ||
- | ./configure | + | ./configure --prefix=/usr |
make | make | ||
make install | make install | ||
</code> | </code> | ||
+ | Download [[https://www.videolan.org/developers/libbluray.html|libbluray]] and make some changes. | ||
+ | Copy ''jni/win32/jni_md.h'' to ''jni/''. Update it to use GCC's typedefs for ''jlong'': | ||
+ | |||
+ | <code> | ||
+ | #ifdef __GNUC__ | ||
+ | typedef long long jlong; | ||
+ | #else | ||
+ | typedef signed __int64 jlong; | ||
+ | #endif | ||
+ | </code> | ||
+ | |||
+ | After that, a standard install: | ||
+ | |||
+ | <code> | ||
+ | ./configure --prefix=/usr | ||
+ | make | ||
+ | make install | ||
+ | </code> | ||
+ | |||
+ | You should be able to build bluray_info at this point. also installing it to ''/usr''. If everything else is in ''/usr/local'', you'd need to set PKG_CONFIG_PATH to ''/usr/local/lib/pkgconfig'' | ||
+ | |||
+ | Here's the problems with this whole setup: | ||
+ | |||
+ | * PKG_CONFIG_PATH should be using /usr/local if everything's not installed to ''/usr'' | ||
+ | * Shouldn't be copying jni_md header, and instead be using Java's installed one | ||
+ | * Fixing the header include in ''Makefile.am'' **might** need to look something like this, but I haven't gotten it working: ''ACLOCAL_AMFLAGS = -I m4 -I /cygdrive/c/Program\ Files/Java/jdk-12.0.1/include/win32 -I /cygdrive/c/Program\ Files/Java/jdk-12.0.1/include'' | ||
+ | * libbluray's autoconf should be checking for the header in configure for Cygwin |