[Pkg-octave-devel] Bug#742503: Bug#742503: octave 3.8.1 requires java
Alois Schloegl
alois.schloegl at ist.ac.at
Thu Jul 16 07:59:17 UTC 2015
On 2015-07-16 07:00, Mike Miller wrote:
> On Wed, Jul 15, 2015 at 08:59:32 -0400, Mike Miller wrote:
>> On Wed, Jul 15, 2015 at 10:00:33 +0200, Alois Schloegl wrote:
>>> Octave should not have a strong dependency on openjdk. Any of the
>>> following solutions would do:
>>> 1) the dependency should be changed to "recommended", and/or
>>> 2) it should allow for some alternative java engine (e.g. gcj or
>>> whatever). (see also [4] ),
>>> 3) keeping the java dependency in a octave package "octave-java" as it
>>> was before 3.8.x
>>
>> Before #1 or #3 are feasible, some upstream work will need to be done to
>> allow Octave to detect the (presence of / version of / path to) JRE at
>> runtime. Please see upstream bug #40111.
>
> Minor clarification: currently, when Octave is compiled with Java
> support but the JRE is not actually present, the error is handled and
> reported:
>
> octave:1> javaMethod ("getRuntime", "java.lang.Runtime")
> error: javaMethod: /usr/lib/jvm/java-7-openjdk-amd64/jre/lib/amd64/server/libjvm.so: failed to load: /usr/lib/jvm/java-7-openjdk-amd64/jre/lib/amd64/server/libjvm.so: cannot open shared object file: No such file or directory
> octave:2>
>
> So Octave does handle this to some degree. The error reporting is not
> ideal and could be improved as part of #40111. But it does look feasible
> to be able to run Octave without a JRE. Users who opt out of installing
> default-jre-headless will see errors like the above if they try to use
> java functions, or functions that rely on java such as those in the
> octave-io package.
>
> Thoughts?
>
I changed the control file in the debian package (see attachments).
default-jre-headless is now not in "Depends" but in "Build-Depends" and
"Recommends". The resulting octave-debian packages does the job.
In case somebody wants to use the java-interface, the above error
message seems good enough.
Please consider repackaging Octave with the modified control file.
Alois
-------------- next part --------------
A non-text attachment was scrubbed...
Name: patch_debian_octave_control.diff
Type: text/x-patch
Size: 3568 bytes
Desc: not available
URL: <http://lists.alioth.debian.org/pipermail/pkg-octave-devel/attachments/20150716/418d0fff/attachment-0001.bin>
-------------- next part --------------
Package: octave
Version: 3.8.2-4
Architecture: amd64
Maintainer: Debian Octave Group <pkg-octave-devel at lists.alioth.debian.org>
Installed-Size: 3497
Build-Depends: default-jre-headless
Depends: libamd2.3.1, libarpack2 (>= 2.1), libblas3 | libblas.so.3, libc6 (>= 2.14), libcamd2.3.1, libccolamd2.8.0, libcholmod2.1.2, libcolamd2.8.0, libcxsparse3.1.2, libfftw3-double3, libfftw3-single3, libfltk-gl1.3 (>= 1.3.0), libfltk1.3 (>= 1.3.1), libfontconfig1 (>= 2.11), libfreetype6 (>= 2.2.1), libgcc1 (>= 1:4.1.1), libgl1-mesa-glx | libgl1, libglpk36 (>= 4.51), libglu1-mesa | libglu1, libgomp1 (>= 4.2.1), libgraphicsmagick++3, libgraphicsmagick3 (>= 1.3.5), liblapack3 | liblapack.so.3, liboctave2 (= 3.8.2-4), libqhull6 (>= 2012.1), libqrupdate1 (>= 1.0), libqscintilla2-11, libqt4-network (>= 4:4.5.3), libqtcore4 (>= 4:4.7.0~beta1), libqtgui4 (>= 4:4.8.0), libstdc++6 (>= 4.9), libumfpack5.6.2, libx11-6, texinfo, octave-common (= 3.8.2-4)
Recommends: gnuplot-x11 | gnuplot-qt, libopenblas-base | libatlas3-base, pstoedit, default-jre-headless
Suggests: octave-info, octave-doc, octave-htmldoc
Conflicts: octave-java, octave3.2
Breaks: dynare (<= 4.4.1-1), libsbml5-octave (<= 5.8.0-2), octave-audio (<= 1.1.4-4), octave-biosig (<= 1.3.0-2+b1), octave-communications (<= 1.2.0-1), octave-control (<= 2.6.2-1), octave-econometrics (<= 1:1.1.1-2), octave-fixed (<= 0.7.10-5+b1), octave-gdf (<= 0.1.2-2+b1), octave-general (<= 1.3.2-2), octave-geometry (<= 1.7.0-1), octave-gmt (<= 4.5.11-1), octave-gsl (<= 1.0.8-5), octave-image (<= 2.0.0-3), octave-io (<< 1.3), octave-java (<= 1.2.9-2), octave-lhapdf (<= 5.9.1-3), octave-linear-algebra (<= 2.2.0-1), octave-miscellaneous (<= 1.2.0-2), octave-mpi (<= 1.1.1-1), octave-nan (<= 2.5.9-1), octave-nlopt (<= 2.4.1+dfsg-1), octave-nurbs (<= 1.3.7-1), octave-ocs (<= 0.1.3-1), octave-octcdf (<= 1.1.6-1), octave-octgpr (<= 1.2.0-3), octave-odepkg (<= 0.8.4-1), octave-openmpi-ext (<= 1.1.0-2), octave-optim (<= 1.2.2-2), octave-optiminterp (<= 0.3.4-1), octave-parallel (<= 2.2.0-1), octave-pfstools (<= 1.8.5-1+b1), octave-plplot (<= 5.9.9-5+b1), octave-psychtoolbox-3 (<= 3.0.11.20131230.dfsg1-1), octave-quaternion (<= 2.2.0-1), octave-secs2d (<= 0.0.8-4), octave-signal (<= 1.2.2-1), octave-sockets (<= 1.0.8-1), octave-specfun (<= 1.1.0-1), octave-strings (<= 1.1.0-1), octave-struct (<= 1.0.10-1), octave-sundials (<= 2.5.0-3), octave-symbolic (<= 1.1.0-2), octave-tsa (<= 4.2.7-1), octave-vlfeat (<= 0.9.17+dfsg0-6), sdpam (<= 7.3.9+dfsg-1)
Replaces: octave-java, octave3.2
Section: math
Priority: optional
Homepage: http://www.octave.org/
Description: GNU Octave language for numerical computations
Octave is a (mostly Matlab (R) compatible) high-level language, primarily
intended for numerical computations. It provides a convenient command-line
interface for solving linear and nonlinear problems numerically.
.
Octave can be dynamically extended with user-supplied C++ files.
More information about the Pkg-octave-devel
mailing list