From: Geoffrey F. <fu...@ga...> - 2001-10-19 17:02:13
|
Alan W. Irwin writes: > Geoffrey, I would be happy to add java to the testing, but I would need a > short cookbook from you on exactly what software to get and what commands > to run to exercise your examples. I probably also need advice from Rafael > about how to implement java on Debian. For example, I looked for java > packages, and there is dummy java virtual machine and dummy java compiler. > The advice for these packages is to install them if you have a "real" java > compiler and java virtual machine. Huh? In order to compile the Java binding, you'll need a full JDK installed. Our sysop did it here, so I haven't been through this personally for a while. The definitive site for Java Linux, is blackdown.org, which ports Sun's JDK's to Linux. There are some alternatives: IBM's JIKES compiler, Guavac, gcj, kaffe, but I haven't personally tried any of them. I've only used the blackdown.org stuff. Once you fetch/install a JDK for your system, you'll need to set JAVA_HOME to point to it. For instance, I have here: src/ds++> echo $JAVA_HOME/ /usr/local/jdk1.3/ I think the PLplot configure script keys of that, if I remember right. Then you need to set your CLASSPATH to "java" (if you're operating from plplot/tmp), or even a fully qualified path if you prefer. Finally, make sure you have LD_LIBRARY_PATH set to . (during development) or $prefix/lib (after installing). configure --enable-java and make will then build javabind.c, and stuff it into libplplot.so, and build the java PLStream.java file which forms the core of the Java-side interface. Then "make jdemos" to build the java demos. Then to run them, do: java plplot/examples/x01 for example. Undestanding that last line takes just a little bit of orientation. The whole thing hangs on the setting of this CLASSPATH variable, which effectively tells java where its universe lives. So what happens is that compiling tmp/x01.java results in a file tmp/java/plplot/examples/x01.class, and when you say java plplot/examples/x01, it looks basically for $CLASSPATH/plplot/examples/x01.class == tmp/java/plplot/examples/x01.class. So, post install, you set CLASSPATH to $prefix/lib/java, and then from anywhere, you can just say java plplot/examples/x01, and it (the JVM) will just run directly $prefix/lib/java/plplot/examples/x01.class. Everything keys off CLASSPATH. Just be aware that $CLASSPATH/plplot/core/PLStream.class (compiled from PLStream.java) itself actually dynamically loads libplplot.so, so LD_LIBRARY_PATH has to be set to find the one of those that you want. Again, post-install, LD_LIBRARY_PATH = $prefix/lib does the job. Then you'll be able to run the java demos, or java application code, from anywhere, just as long as CLASSPATH and LD_LIBRARY_PATH are set right. I know it sounds like kind of a lot, but it isn't bad with a few aliases. > NEW RELEASE? > > If somebody is willing to fix the two mentioned postscript problems, and > Joao sorts out the legend coordinate and colour initialization problems for > the octave examples, I think that would put us in good position to release > 5.1.0 as a stable release in the near future featuring the dynamic drivers > and the new java stuff (if I can figure out how to test it). This > presupposes that it will be some time (because of his new job pressures) > beofe Rafael can start integrating his AM/LT changes. > > What do the rest of you think of this release strategy? I am totally swamped at work right now, so I don't expect to do anything major new anytime soon. I may do some bug fixes here and there. I'll have to check in that change we discussed recently so the java stuff will work with dynamic drivers again. That should be in before the release, but anything else you need will need to come from others. WRT python and plcont: I remember that being a trouble spot. I think if you read the plmodule.c code, you'll probably see the evidence of confused thrashing and milling about. Sorry. I thought I had left it in a useable state, but maybe not. I /know/ that when I last ran pytkdemo, all the plots looked fine to me, but that's been a number of years/jobs ago, so my memory isn't 100%. I hope I didn't have some uncommitted change/fix that got left on some disk N employers ago without ever getting check in... I thought the prospects for using PLplot+Python here were good as recently as a month ago, but recently those hopes were dashed. We'll still use PLplot here, but it will be with the Tcl/Tk front end, since the whole EDA industry has basically adopted Tcl as its scripting language. Better than nothing, but I'd hoped to raise the bar a bit.. Oh well. > I am hoping to release say two weeks from now, but that timing depends > critically on people stepping forward to fix the bugs I mentioned and on > whether other bugs are there which I an unaware of. I'll check in the raparation for the Java+dyndrivers, but I can't commit to looking at the other stuff. -- Geoffrey Furnish fu...@ga... |