From: Alan W. I. <ir...@be...> - 2002-11-30 00:57:52
|
Actually the AT tcl binding was fine last night, but I just didn't know it. I had a tough time finding what the problem was because somebody stripped the error messages out of tclAPI.c so it just failed silently when the extended search failed. That is not a good situation since the extended search is still unreliable. This silent failure may be the reason why nobody seems to be seriously trying the fundamentally important tclsh (or wish) methods of running plplot commands. Turns out the extended search does not work for tclsh if you use any install locations other than /usr and /usr/local/plplot. For AT tests, I happened to be using an install location of /usr/local/plplot_at. I haven't actually tested the new code on /usr/local/plplot because I have my comparison tree there from MAIN HEAD, but setting PL_LIBRARY to /usr/local/plplot_at/lib/plplot5.1.0/tcl fixed the search problem, and after that change several tcl examples looked good on AT for the both the pltcl and tclsh methods. Alan email: ir...@be... phone: 250-727-2902 FAX: 250-721-7715 snail-mail: Dr. Alan W. Irwin Department of Physics and Astronomy, University of Victoria, P.O. Box 3055, Victoria, British Columbia, Canada, V8W 3P6 __________________________ Linux-powered astrophysics __________________________ |
From: Maurice L. <mj...@ga...> - 2002-12-01 02:16:53
|
Alan W. Irwin writes: > Actually the AT tcl binding was fine last night, but I just didn't know it. > > I had a tough time finding what the problem was because somebody stripped > the error messages out of tclAPI.c so it just failed silently when the > extended search failed. That is not a good situation since the extended > search is still unreliable. This silent failure may be the reason why > nobody seems to be seriously trying the fundamentally important tclsh (or > wish) methods of running plplot commands. If the extended search fails PlbasicInit() returns TCL_ERROR, which: (a) is all the info you really need since you have a stack trace to find where the error occured, and (b) there's no other info to give really -- at the point of failure "libdir" is NULL after several tries to give it a value. I suppose one nice enhancement would be for PlbasicInit() to set its internal debug variable using a Tcl global variable of the same name so you could get immediate feedback w/o recompilation. But anyway for now to get more info on the search process recompile with debug=1 in PlbasicInit() and see what it tells you, that should help. -- Maurice LeBrun mj...@ga... Research Organization for Information Science and Technology of Japan (RIST) |
From: Alan W. I. <ir...@be...> - 2002-12-01 03:06:26
|
On Sat, 30 Nov 2002, Maurice LeBrun wrote: > If the extended search fails PlbasicInit() returns TCL_ERROR, which: (a) is > all the info you really need since you have a stack trace to find where the > error occured I have seen the stack trace put out by plframe for other errors, and that was most useful, but in the tcl-only situation with no tk driver or plframe is there another way to get at it? I was floundering around yesterday because I didn't know how to get a stack trace for the tcl-only situation. Anyhow, I am now using the PL_LIBRARY workaround, but the code has access to DATA_DIR and therefore the exact install location (DATA_DIR "../tcl) for plplot.tcl so eventually (post-merge) I believe we should put that install location in the code as a possibility for the unix extended search. Alan |
From: Maurice L. <mj...@ga...> - 2002-12-23 05:59:49
|
Alan W. Irwin writes: > On Sat, 30 Nov 2002, Maurice LeBrun wrote: > > > If the extended search fails PlbasicInit() returns TCL_ERROR, which: (a) is > > all the info you really need since you have a stack trace to find where the > > error occured > > I have seen the stack trace put out by plframe for other errors, and that > was most useful, but in the tcl-only situation with no tk driver or plframe > is there another way to get at it? I was floundering around yesterday > because I didn't know how to get a stack trace for the tcl-only situation. Sorry I never got back to you on this one. Sheesh, have I ever been busy since you posed it three weeks ago. Anyway, the simple answer is: "puts $errorInfo". See "man n error" for more info. We could probably improve the Tcl error handling (not to mention many other areas of Tcl support) in plplot. I didn't get to do as much with this over the last year as I wanted but am still hoping.. -- Maurice LeBrun mj...@ga... Research Organization for Information Science and Technology of Japan (RIST) |