Hi,

I am moving away from using the threaded version of Tcl with tclBlend,
because of the segmentation fault I mentioned on this list over the
past week.  However, I would like to see if it's possible for me to
have my Java program invoke Tcl scripts.

I wrote the following little test program:

     import tcl.lang.*;
     public class CallTcl {
         public static void main(String[] args) {
             doit();
         }
         public static void doit() {
             try {
                 Interp theInterp = new Interp();
                 theInterp.eval("puts {Hello, world}");
                 theInterp.dispose();
             } catch (Exception e) {
                 System.err.println("caught " + e.toString());
             }
         }
     }

When I run this program (i.e., start Java first and have it try to call 
Tcl), I get the following error:
     Exception in thread "main" java.lang.NullPointerException
             at tcl.lang.Interp.create(Native Method)
             at tcl.lang.Interp.<init>(Interp.java:129)
             at CallTcl.doit(CallTcl.java:8)
             at CallTcl.main(CallTcl.java:4)
     caught tcl.lang.TclRuntimeError: could not find class java/lang/Object.
     Check that your LD_LIBRARY_PATH environment variable includes the 
directory where libtclblend.so resides.
     Try looking in the directories under the value of tcl_library,
     currently: Currently, the CLASSPATH environment variable is set to:
     .jar:/home/schwartz/schwartz-colo-dev/isms/SpaceKit/blocks.java/build/bsp

When I start jtclsh and then run it, it works fine:
     % package require java
     1.3.0
     % set j [java::new CallTcl]
     java0x1
     % puts [$j doit]
     Hello, world

Does tclBlend require that Tcl be the first to start?  If that's not the
problem, does anyone know what the problem is?  My LD_LIBRARY_PATH contains
/usr/local/lib/tcljava1.3.0, which is where my libtclblend.so lives.

Thanks
  - Mike

----------------------------------------------------------------
The TclJava mailing list is sponsored by Scriptics Corporation.
To subscribe:    send mail to [EMAIL PROTECTED]  
                 with the word SUBSCRIBE as the subject.
To unsubscribe:  send mail to [EMAIL PROTECTED] 
                 with the word UNSUBSCRIBE as the subject.
To send to the list, send email to '[EMAIL PROTECTED]'. 
An archive is available at http://www.mail-archive.com/tcljava@scriptics.com

Reply via email to