Hi,

Im using the Tcl interpreter in a C++ main modul.

When i  start the application and invoke the tcl interpreter with
the package java and try to open a Java GUI i get a crash (output see
below)

My environment:
-----------
Linux 2.2.5 with glibc 2.0.x
JDK 1.2pre2 (blackdown)
Tcl 8.0.5
TclBlend 1.2.3
egcs gcc-2.95 19990602 (prerelease)


the libraries in my executable:
-------------------
 ldd pled.exe
        libpthread.so => /usr/lib/libpthread.so (0x40008000)
        libX11.so.6 => /usr/X11R6/lib/libX11.so.6 (0x40016000)
        libpng.so.2 => /usr/X11R6/lib/libpng.so.2 (0x400bb000)
        libz.so.1 => /usr/lib/libz.so.1 (0x400d8000)
        libtiff.so.3 => /usr/lib/libtiff.so.3 (0x400e8000)
        /u/pia/lib/libtcl8.0.so => /u/pia/lib/libtcl8.0.so (0x4011b000)
        libdl.so.2 => /lib/libdl.so.2 (0x40187000)
        /u/pia/lib/libtk8.0.so => /u/pia/lib/libtk8.0.so (0x4018b000)
        libstdc++-libc6.0-1.so.2 =>
/usr/local/lib/libstdc++-libc6.0-1.so.2 (0x40231000)
        libm.so.6 => /lib/libm.so.6 (0x40273000)
        libc.so.6 => /lib/libc.so.6 (0x4028d000)
        libjpeg.so.6 => /usr/lib/libjpeg.so.6 (0x4033a000)
        /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x2aaaa000)



------- output when invoking java from C++ using TclBlend 1.2.3 -------
SIGSEGV   11*  segmentation violation
        stackpointer=0xbfffbfa8

Full thread dump Classic VM (Linux_JDK_1.2_pre-release-v2, native
threads):
    "Finalizer" (TID:0x40760320, sys_thread_t:0x82ac368, state:CW,
native ID:0xc03) prio=8
        at java.lang.Object.wait(Native Method)
        at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:112)
        at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:127)
        at
java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:174)
    "Reference Handler" (TID:0x407603b0, sys_thread_t:0x82a7a80,
state:CW, native ID:0x802) prio=10
        at java.lang.Object.wait(Native Method)
        at java.lang.Object.wait(Object.java:424)
        at
java.lang.ref.Reference$ReferenceHandler.run(Reference.java:114)
    "SIGQUIT handler" (TID:0x407603e0, sys_thread_t:0x82a0508, state:R,
native ID:0x401) prio=5
    "main" (TID:0x407601e0, sys_thread_t:0x821a898, state:R, native
ID:0x400) prio=5
        at java.lang.String.valueOf(Compiled Code)
        at java.lang.Compiler.<clinit>(Compiler.java:68)
Monitor Cache Dump:
    java.lang.ref.Reference$Lock@407603C0/40795B20: <unowned>
        Waiting to be notified:
            "Reference Handler" (0x82a7a80)
    java.lang.ref.ReferenceQueue$Lock@40760338/40796028: <unowned>
        Waiting to be notified:
            "Finalizer" (0x82ac368)
    <unknown key> (0x40760131): owner "main" (0x821a898) 1 entry
Registered Monitor Dump:
    PCMap lock: <unowned>
    utf8 hash table: <unowned>
    JNI pinning lock: <unowned>
    JNI global reference lock: <unowned>
    BinClass lock: <unowned>
    Class linking lock: <unowned>
    System class loader lock: <unowned>
    Code rewrite lock: <unowned>
    Heap lock: <unowned>
    Monitor cache lock: owner "main" (0x821a898) 1 entry
    Thread queue lock: owner "main" (0x821a898) 1 entry
    Dynamic loading lock: <unowned>
    Monitor registry: owner "main" (0x821a898) 1 entry
-----------------------------------------


-------------------- the gdb output:
(gdb) run
Starting program: /u/pia/bin/pled.exe
[New Thread 23933]
[New Thread 23932]
[New Thread 23934]

Program received signal ?, Unknown signal.
[Switching to Thread 23934]

Program received signal ?, Unknown signal.
0x403140e4 in __syscall_sigsuspend () at soinit.c:27
soinit.c:27: No such file or directory.
(gdb) where
#0  0x403140e4 in __syscall_sigsuspend () at soinit.c:27
#1  0x40339320 in __DTOR_END__ ()
#2  0x4001bb69 in sem_wait (sem=0x82a04b4) at restart.h:49
#3  0x403e881d in _start (tid_=0x82a0438) at
../../../../../src/linux/hpi/native_threads/src/threads_md.c:319
#4  0x40019587 in pthread_start_thread (arg=0xbf9ffea4) at manager.c:192




-----------------

My environment seems to be ok, because i can start the Swing GUI
manually with tclsh8.0.

Has anybody an idea what to try, or where to debug?

Where can i set the debuglevel of the JVM throu TclBlend?

Has anybody running  similar configuration where works fine??


Thanks for a hint,

Marcel


----------------------------------------------------------------
The TclJava mailing list is sponsored by WebNet Technologies.
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]'. 
A list archive is at: http://www.findmail.com/listsaver/tcldallas/

Reply via email to