From: Maurice L. <mj...@ga...> - 2002-08-06 04:10:32
|
Maurice LeBrun writes: > The problem is then that the tmp/tclIndex file is copied to that location. > Since tmp/ has access to all the *.tcl files, tclIndex contains references > to all of them. But then it is not correct for the install dir. A proper > tclIndex file needs to be made-in / copied-to that dir. Easy enough, done. An even stranger problem turned up in testing of this however. After fixing $(TCL_DIR)/tclIndex, I was able to eventually the tkwin stuff successfully: $ wish % source pldefaults.tcl % load drivers/tkwin_drv.so Plplotter % package provide Plplotter 5.1.0 % source runAllDemos.tcl ... If I then install it: $ make install gcc -shared -fPIC -o drivers/xwin_drv.so \ -L/home/mjl/gts/lib -ltcl8.3 -ltk8.3 -L/usr/X11R6/lib -lX11 -L. -lplplottcltk -Wl,-rpath,/home/mjl/gts/lib gcc -shared -fPIC -o drivers/tkwin_drv.so \ shared/Plplotter_Init.o shared/plplotter.o shared/tkwin_common.o \ -L/home/mjl/gts/lib -ltcl8.3 -ltk8.3 -L/usr/X11R6/lib -lX11 -L. -lplplottcltk -Wl,-rpath,/home/mjl/gts/lib gcc -shared -fPIC -o drivers/tk_drv.so \ -L/home/mjl/gts/lib -ltcl8.3 -ltk8.3 -L/usr/X11R6/lib -lX11 -L. -lplplottcltk -Wl,-rpath,/home/mjl/gts/lib and try again, still in tmp/, I get: ged$ wish % source pldefaults.tcl % load drivers/tkwin_drv.so Plplotter % package provide Plplotter 5.1.0 % source runAllDemos.tcl Unable to locate dispatch table initialization function for driver: tkwin_drv.so. Segmentation fault This is 100% reproducible on my machine. The install evidently modifies the contents of the tmp directory so that this procedure no longer works.. I guess through the rebuild of the drivers. To test this, I did: $ rm drivers/* $ make gcc -shared -fPIC -o drivers/plmeta_drv.so shared/plmeta.o -L. -lplplot gcc -shared -fPIC -o drivers/null_drv.so shared/null.o -L. -lplplot gcc -shared -fPIC -o drivers/ps_drv.so shared/ps.o shared/pstex.o -L. -lplplot gcc -shared -fPIC -o drivers/xwin_drv.so shared/xwin.o -L/home/mjl/gts/lib -ltcl8.3 -ltk8.3 -L/usr/X11R6/lib -lX11 -L. -lplplottcltk -Wl,-rpath -Wl,/home/mjl/dev/plplot/head1/tmp gcc -shared -fPIC -o drivers/tk_drv.so shared/tk.o -L/home/mjl/gts/lib -ltcl8.3 -ltk8.3 -L/usr/X11R6/lib -lX11 -L. -lplplottcltk -Wl,-rpath -Wl,/home/mjl/dev/plplot/head1/tmp gcc -shared -fPIC -o drivers/pbm_drv.so shared/pbm.o -L. -lplplot gcc -shared -fPIC -o drivers/tkwin_drv.so shared/Plplotter_Init.o shared/plplotter.o shared/tkwin_common.o shared/tkwin.o -L/home/mjl/gts/lib -ltcl8.3 -ltk8.3 -L/usr/X11R6/lib -lX11 -L. -lplplottcltk \ -Wl,-rpath -Wl,/home/mjl/dev/plplot/head1/tmp ..and then tried again, whereupon it worked. This is also bad. The install should either relink the drivers to a temporary location (preferably the final location) or destroy the now-bogus drivers under tmp/drivers. -- Maurice LeBrun mj...@ga... Research Organization for Information Science and Technology of Japan (RIST) |