Re: trying to build the image.deb
On Tue, 23 Sep 2008, Paolo Ariano wrote:
the /debian/rules script use to to set the JAVA_HOME this line:
/usr/sbin/update-java-alternatives -l | head -1 | cut -d' ' -f 3
that gives me:
/usr/lib/jvm/java-1.5.0-sun
apt-get install sun-java5-jdk will help you ;)
Well, that's actually not enough. I tried adding this to build-depends
and got:
Selecting previously deselected package sun-java5-jdk.
Unpacking sun-java5-jdk (from .../sun-java5-jdk_1.5.0-16-3_i386.deb) ...
sun-dlj-v1-1 license could not be presented
try 'dpkg-reconfigure debconf' to select a frontend other than noninteractive
dpkg: error processing /var/cache/apt/archives/sun-java5-jdk_1.5.0-16-3_i386.deb (--unpack):
subprocess pre-installation script returned error exit status 2
So we have to find a way to work around this license presentation issue
to enable autobuilders building imagej. I can confirm that there is really
an issue with jpeg when using openjdk-6-jdk as build dependency. This
would solve the non-free/contrib issue - which should be the the final
goal. Perhaps anybody could try to consult debian-java mailing list to
sort out this issue or might try some googling to sort out things like
Processing triggers for man-db ...
-> unmounting dev/pts filesystem
-> unmounting proc filesystem
-> cleaning the build env.
-> removing directory /var/cache/pbuilder/build//10882 and its subdirectories
ldd/imagej-1.41l/ij/plugin/JpegWriter.java:41: warning: com.sun.image.codec.jpeg.JPEGCodec is Sun proprietary API and may be removed in a future release
[javac] JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(f);
[javac] ^
[javac] /tmp/buildd/imagej-1.41l/ij/plugin/JpegWriter.java:42: warning: com.sun.image.codec.jpeg.JPEGEncodeParam is Sun proprietary API and may be removed in a future release
[javac] JPEGEncodeParam param = encoder.getDefaultJPEGEncodeParam(bi);
[javac] ^
[javac] /tmp/buildd/imagej-1.41l/ij/plugin/JpegWriter.java:45: cannot find symbol
[javac] symbol : method setHorizontalSubsampling(int,int)
[javac] location: class com.sun.image.codec.jpeg.JPEGEncodeParam
[javac] <--><------><------><------>param.setHorizontalSubsampling(1, 1);
[javac] <--><------><------><------> ^
[javac] /tmp/buildd/imagej-1.41l/ij/plugin/JpegWriter.java:46: cannot find symbol
[javac] symbol : method setHorizontalSubsampling(int,int)
[javac] location: class com.sun.image.codec.jpeg.JPEGEncodeParam
[javac] <--><------><------><------>param.setHorizontalSubsampling(2, 1);
[javac] <--><------><------><------> ^
...
in this way the java compilation is ok and the problem is after in n
making debian directory :(
Well, that was easy - and sorry for breaking your packaging stuff.
It is now fixed in SVN. The reason was that debian/imagej (your shell
script) had the same name as the directory that dh_install wanted to
create. So I used your old name debian/imagej.sh and moved this manually
in debian/rules - I have not yet found a more elegant way for this.
BTW, this shell script is buggy:
$ bash -n debian/imagej.sh
debian/imagej.sh: line 150: syntax error in conditional expression: unexpected token `('
debian/imagej.sh: line 150: syntax error near `@(-'
debian/imagej.sh: line 150: ` if [[ "$var" == @(-batch|-eval|-macro|-mem|-new|-port|-run|-verbose) ]] ; then'
Any idea how to fix this? I would probably use a POSIX shell compatible
case statement instead.
Kind regards
Andreas.
--
http://fam-tille.de
Reply to: