|
From: | Rafael Monteiro |
Subject: | Re: How to build MXE Octave-4.0.0 64 bits with Java support? |
Date: | Sun, 7 Jun 2015 19:37:52 -0300 |
$ java -version
java version "1.7.0_79"
OpenJDK Runtime Environment (IcedTea 2.5.5) (7u79-2.5.5-1~deb8u1)
OpenJDK 64-Bit Server VM (build 24.79-b02Java , mixed mode)
configure: WARNING: JAVA_HOME environment variable not initialized. Auto-detection will proceed but is unreliable.
checking for java... /usr/bin/java
checking for javac... no
checking for jar... no
configure: WARNING: No javac compiler or jar executable found. Octave will not be able to call Java methods.
Java home: /usr/lib/jvm/java-7-openjdk-amd64
Java JVM path:
Java CPPFLAGS: /home/rafael/mxe-octave/usr/x86_64-w64-mingw32/include/java
Java libraries:
Rafael wrote
> Hi,
>
> I tried to build Octave-4.0.0 using this instructions:
> http://wiki.octave.org/Windows_Installer
>
> The build was created on a *Debian 8* system using *--enable-64* flag and
While it doesn't matter for your actual question: do you really need 64-bit
indexing? If you just build with --enable-windows-64, you'll get a 64-bit
Octave with 32-bit indexing that only runs on Win64 and can access double
arrays of 16 GB / complex 32 GB / single & int32 8 GB. Enough for most
uses.
> it works fine on *Windows*, but it looks like the Java interface was not
> built for some reason. If I try to run any Java command, I get something
> like this:
>
>>> javaclasspath
> error: javaMethod: Octave was not compiled with Java interface
> error: called from
> javaclasspath at line 64 column 16
Apparently on your Debian system, Java wasn't picked up by the mxe-octave
build system.
Do you have a 64-bit JDK on your Debian system?
mxe-octave should be able to detect it; or rather, the Octave configure
system should, when it is invoked by the mxe build process.
First step:
=========
In mxe-octave (on Debian), look in the log/ directory for "octave", it's a
symlink to the configure and build log for Octave. Look in there to find out
if Octave's configure found the JDK. You can search/grep for "Java home: "
and "Java JVM path:"
Second step:
==========
After having verified that you indeed have a 64-bit JDK installed on Debian,
manually add the required info in the relevant configure stanza in
mxe-octave/src/octave.mk (or .../stable-octave.mk, whatever is mentioned in
the top of mxe-octave/Makefile). To find out what you need, run
./configure --help in an Octave build directory on Linux, it is something
like --with-java-includedir= and --with-java-libdir=. I'm on Windows now so
I can't check.
Oh, and IIRC it may be that you'd need to omit the include dir itself in the
path, so:
--with-java-includedir=/full/path/to/java/jdk and omit the final /include
(!) - just experiment a bit.
Philip
--
View this message in context: http://octave.1599824.n4.nabble.com/How-to-build-MXE-Octave-4-0-0-64-bits-with-Java-support-tp4670722p4670727.html
Sent from the Octave - Maintainers mailing list archive at Nabble.com.
[Prev in Thread] | Current Thread | [Next in Thread] |