Re: [Osw-users] Tcl/Tk 8.4.9
Brought to you by:
peoplestank
From: Andy W. S. <an...@a2...> - 2005-02-13 04:57:54
|
James Ravan wrote: > I=92m running PlanetCCRMA under Fedora Core 3. The supplied tclsh in=20 > /usr/bin says =93no such array element=94 when I try: > > $ tclsh > > % puts $tcl_platform(threaded) > > So after the successful =93make test=94, which included tests for=20 > threading, by the way, while still in the unix subdirectory of the=20 > downloaded 8.4.9 Tcl source tree, and before I stuck things in=20 > /usr/local/bin with a =93make install=94, I made sure that threading wa= s=20 > enabled in the newly compiled tclsh by typing: > > $ ./tclsh > > % puts $tcl_platform(threaded) > > Well, it said the same thing as the original tclsh said: =93no such=20 > array element=94! So I=92m confused. After I configured with=20 > =93=97enable-threads=94, I expected the make to =93just work=94. But it= seems,=20 > and a few Google searches seem to bear out, that tcl_platform should=20 > contain a =93threaded=94 element that contains 1. And that is not the c= ase=20 > in my new tclsh for some reason. > sounds like you are doing the right thing. sanity check, is your libtcl=20 linked to libpthread? here is what mine looks like; root@xfc:/usr/lib# ldd libtcl8.4.so libdl.so.2 =3D> /lib/libdl.so.2 (0x400ca000) libpthread.so.0 =3D> /lib/libpthread.so.0 (0x400cd000) libm.so.6 =3D> /lib/libm.so.6 (0x4011f000) libc.so.6 =3D> /lib/libc.so.6 (0x40141000) /lib/ld-linux.so.2 =3D> /lib/ld-linux.so.2 (0x80000000) root@xfc:/usr/lib# tclsh8.4 % puts $tcl_platform(threaded) 1 % root@xfc:/usr/lib# nm libtcl8.4.a | grep -i thread nm: tclAlloc.o: no symbols U Tcl_GetCurrentThread U Tcl_GetThreadData U Tcl_ThreadAlert U TclThreadAllocObj U TclThreadFreeObj U TclThreadAllocObj 00000eb0 t NewThreadProc U TclFinalizeThreadAlloc U TclFinalizeThreadData 00000c60 T TclInThreadExit U TclThreadDataKeyGet 00000ef0 T Tcl_CreateThread 00000710 T Tcl_CreateThreadExitHandler 00000770 T Tcl_DeleteThreadExitHandler 00000ba0 T Tcl_FinalizeThread U Tcl_GetThreadData U TclpThreadCreate U TclThreadAllocObj U TclThreadFreeObj U Tcl_GetCurrentThread U Tcl_CreateThreadExitHandler U Tcl_GetThreadData U TclThreadAllocObj 00001100 T Tcl_GetChannelThread U Tcl_GetCurrentThread U Tcl_GetThreadData U Tcl_CreateThreadExitHandler U Tcl_GetThreadData U TclThreadAllocObj U TclThreadFreeObj U TclThreadAllocObj U TclThreadFreeObj U Tcl_GetCurrentThread U Tcl_GetThreadData 00000b80 T Tcl_ThreadAlert 00000330 T Tcl_ThreadQueueEvent U TclThreadAllocObj U TclThreadFreeObj U TclThreadFreeObj U Tcl_CreateThreadExitHandler U Tcl_GetThreadData U TclThreadAllocObj U TclThreadFreeObj U TclThreadAllocObj U TclInThreadExit U Tcl_CreateThread U Tcl_CreateThreadExitHandler U Tcl_DeleteThreadExitHandler U Tcl_ExitThread U Tcl_FinalizeThread U Tcl_GetChannelThread U Tcl_GetCurrentThread U Tcl_GetThreadData U Tcl_JoinThread U Tcl_ThreadAlert U Tcl_ThreadQueueEvent nm: tclThreadJoin.o: no symbols tclThreadAlloc.o: 00000d30 T TclFinalizeThreadAlloc 00000540 T TclThreadAllocObj 00000640 T TclThreadFreeObj U Tcl_GetCurrentThread tclThreadJoin.o: tclThread.o: 000002f0 T TclFinalizeThreadData 00000080 T TclThreadDataKeyGet 000000b0 T TclThreadDataKeySet 000004a0 T Tcl_ExitThread U Tcl_FinalizeThread 00000000 T Tcl_GetThreadData U TclpFinalizeThreadData U TclpFinalizeThreadDataKey U TclpThreadDataKeyGet U TclpThreadDataKeyInit U TclpThreadDataKeySet U TclpThreadExit U TclThreadDataKeyGet U Tcl_CreateThreadExitHandler U Tcl_GetThreadData U TclInThreadExit 00000870 t NotifierThreadProc U Tcl_GetThreadData U TclpThreadCreate U TclpThreadExit 00000014 b notifierThread 00000140 T Tcl_GetCurrentThread U Tcl_GetThreadData 000000e0 T Tcl_JoinThread 00000480 T TclpFinalizeThreadData 000004e0 T TclpFinalizeThreadDataKey 00000000 T TclpThreadCreate 00000400 T TclpThreadDataKeyGet 00000380 T TclpThreadDataKeyInit 00000440 T TclpThreadDataKeySet 00000120 T TclpThreadExit U pthread_attr_destroy U pthread_attr_init U pthread_attr_setdetachstate U pthread_attr_setscope U pthread_attr_setstacksize U pthread_cond_broadcast U pthread_cond_destroy U pthread_cond_init U pthread_cond_timedwait U pthread_cond_wait U pthread_create U pthread_exit U pthread_getspecific U pthread_join U pthread_key_create U pthread_key_delete U pthread_mutex_destroy U pthread_mutex_init U pthread_mutex_lock U pthread_mutex_unlock U pthread_self U pthread_setspecific U Tcl_GetThreadData U TclThreadAllocObj U TclThreadAllocObj U TclThreadFreeObj |