From: Pankaj L. <pa...@da...> - 2003-03-26 15:30:01
|
Hi All, I found following while building and testing the Plplotter 5.2.0 with tcl/tk driver. Its bit long, sorry for that. I hope it would be useful to other Plplotter user. 0. I am using Solaris 8, ActiveTcl8.4 versions of tools. I have downloaded the plplot-5.2.0.tar.gz from the Plplotter site on 12 Feb 2003. 1. A bug which causes value of var variable as 5.1.0 in pkgindex.tcl file. I believe this is fixed. 2. If I define TCLLIBDIR and TKLIBDIR environment variables, configure script does not look for the correct version of tcl/tk library for linker. It just generates -ltcl, -ltk flags for linker. I used to work around to solve this. I created a softlink to appropriate libraries. eg. for -ltcl I created a softlink libtcl.so to libtcl8.4.so and so on or I have removed the above environment variable to force configure script to go through appropriate folders. 3. When I define USE_TCL_STUBS, USE_TK_STUBS compiler switches for tcl/tk related files, I am getting compilation error in "tclMain.c" for following lines EXTERN int Tcl_LinkVar(); int (*tclDummyLinkVarPtr)() = Tcl_LinkVar; I have commented these lines and build was successful. 4. After building the libraries, I have used Plplplotter package for my testing. When I try following on wish prompt % package require Plplotter 5.2.0 % Plplotwin .p1 % pack .p1 % Plplotwin .p2 After the second call, My wish prompt used crash throwing some Xwindows error in "XCreatePixmap()" function in "tkwin.c" file when Xsync() is called in the same function. I found the problem was with following line. dev->pixmap = Tk_GetPixmap(tkwd->display, Tk_WindowId(tkwin), Tk_Width(tkwin), Tk_Height(tkwin), DefaultDepthOfScreen(Tk_Screen(tkwin))); When I comment these and use following lines dev->pixmap = Tk_GetPixmap(Tk_Display(tkwin), Tk_WindowId(tkwin), Tk_Width(tkwin), Tk_Height(tkwin), DefaultDepthOfScreen(Tk_Screen(tkwin))); Plplotter works fine. Incidentally, the above lines are commented in the source code with some explanation. 5. When I try to link standard tcl/tk static libraries like libtcl8.4.a etc, I am getting redefinition linking error for following function in tclMain.c. void TclSetStartupScriptFileName(char *fileName); char *TclGetStartupScriptFileName(void);. Again I am successful in building the package once, I comment the above functions. Currently I am able to use Plplotter package on Solaris 8 with ActiveTcl 8.4. Please let me know if anyone has better solution for these problems. Thanks Pankaj. |