From: Jerry <lan...@qw...> - 2012-08-21 03:11:28
|
Now I wonder if we could start working towards rehabilitating Tcl/Tk on OS X. I say "rehabilitate" because I had been building this without problems for years. With NON_TRANSITIVE=ON or NON_TRANSITIVE=OFF, ENABLE_tcl=ON, and ENABLE_tk=ON, the build fails as below. FWIW, my OS X has two Tcl and Tk installations, and it looks like cmake is using the "factory" versions of the headers and libraries (the so-called "framework builds") but tclsh from Macports (in /opt). (All of the tcl stuff is also in /usr/bin or /usr/lib but they are links to the framework.) Cmake stuff: Found Tclsh: /opt/local/bin/tclsh (found version "8.5") -- Found TCL: /System/Library/Frameworks/tcl.framework -- Found TCLTK: /System/Library/Frameworks/tcl.framework -- Found TK: /System/Library/Frameworks/tk.framework -- Looking for include paths and libraries for Tcl/Tk - found -- Looking for tclsh -- Looking for tclsh - found -- TCL_TCLSH = /opt/local/bin/tclsh -- TCL_INCLUDE_PATH = /System/Library/Frameworks/Tcl.framework/Headers -- TCL_LIBRARY = /System/Library/Frameworks/tcl.framework -- TK_INCLUDE_PATH = /System/Library/Frameworks/Tk.framework/Headers;/usr/include -- TK_LIBRARY = /System/Library/Frameworks/tk.framework Here is the error report for NON_TRANSITIVE=ON: Linking C shared library libplplottcltkd.dylib cd /usr/local/plplot_build_dir/bindings/tcl && /opt/local/bin/cmake -E cmake_link_script CMakeFiles/plplottcltkd.dir/link.txt --verbose=1 /usr/local/adacore-gnat-2011/bin/gcc -dynamiclib -Wl,-headerpad_max_install_names -single_module -compatibility_version 9.0.0 -current_version 9.2.0 -o libplplottcltkd.9.2.0.dylib -install_name /usr/local/plplot_build_dir/bindings/tcl/libplplottcltkd.9.dylib CMakeFiles/plplottcltkd.dir/tclAPI.c.o CMakeFiles/plplottcltkd.dir/tclMain.c.o CMakeFiles/plplottcltkd.dir/__/tk/Pltk_Init.c.o CMakeFiles/plplottcltkd.dir/__/tk/plframe.c.o CMakeFiles/plplottcltkd.dir/__/tk/plr.c.o CMakeFiles/plplottcltkd.dir/__/tk/tcpip.c.o CMakeFiles/plplottcltkd.dir/__/tk/tkMain.c.o libtclmatrixd.9.2.0.dylib ../../src/libplplotd.11.0.0.dylib -framework tcl -framework tk Undefined symbols for architecture x86_64: "_XLookupString", referenced from: _PlFrameKeyEH in plframe.c.o "_XFlush", referenced from: _DisplayPlFrame in plframe.c.o ld: symbol(s) not found for architecture x86_64 collect2: ld returned 1 exit status make[2]: *** [bindings/tcl/libplplottcltkd.9.2.0.dylib] Error 1 make[1]: *** [bindings/tcl/CMakeFiles/plplottcltkd.dir/all] Error 2 make: *** [all] Error 2 With NON_TRANSITIVE=OFF, the error is the same but with some extra libraries being linked: Linking C shared library libplplottcltkd.dylib cd /usr/local/plplot_build_dir/bindings/tcl && /opt/local/bin/cmake -E cmake_link_script CMakeFiles/plplottcltkd.dir/link.txt --verbose=1 /usr/local/adacore-gnat-2011/bin/gcc -dynamiclib -Wl,-headerpad_max_install_names -single_module -compatibility_version 9.0.0 -current_version 9.2.0 -o libplplottcltkd.9.2.0.dylib -install_name /usr/local/plplot_build_dir/bindings/tcl/libplplottcltkd.9.dylib CMakeFiles/plplottcltkd.dir/tclAPI.c.o CMakeFiles/plplottcltkd.dir/tclMain.c.o CMakeFiles/plplottcltkd.dir/__/tk/Pltk_Init.c.o CMakeFiles/plplottcltkd.dir/__/tk/plframe.c.o CMakeFiles/plplottcltkd.dir/__/tk/plr.c.o CMakeFiles/plplottcltkd.dir/__/tk/tcpip.c.o CMakeFiles/plplottcltkd.dir/__/tk/tkMain.c.o libtclmatrixd.9.2.0.dylib ../../src/libplplotd.11.0.0.dylib -framework tcl -framework tk /usr/lib/libltdl.dylib /usr/lib/libdl.dylib ../../lib/csa/libcsirocsa.0.0.1.dylib ../../lib/qsastime/libqsastime.0.0.1.dylib /usr/lib/libm.dylib Undefined symbols for architecture x86_64: "_XLookupString", referenced from: _PlFrameKeyEH in plframe.c.o "_XFlush", referenced from: _DisplayPlFrame in plframe.c.o ld: symbol(s) not found for architecture x86_64 collect2: ld returned 1 exit status make[2]: *** [bindings/tcl/libplplottcltkd.9.2.0.dylib] Error 1 make[1]: *** [bindings/tcl/CMakeFiles/plplottcltkd.dir/all] Error 2 make: *** [all] Error 2 IIRC there was at the beginning of this thread the suggestion that there might be something wrong with the X11 libraries. Jerry |
From: Jerry <lan...@qw...> - 2012-08-21 03:36:58
|
On Aug 20, 2012, at 8:11 PM, Jerry wrote: > Now I wonder if we could start working towards rehabilitating Tcl/Tk on OS X. I say "rehabilitate" because I had been building this without problems for years. > > With NON_TRANSITIVE=ON or NON_TRANSITIVE=OFF, ENABLE_tcl=ON, and ENABLE_tk=ON, the build fails as below. FWIW, my OS X has two Tcl and Tk installations, and it looks like cmake is using the "factory" versions of the headers and libraries (the so-called "framework builds") but tclsh from Macports (in /opt). (All of the tcl stuff is also in /usr/bin or /usr/lib but they are links to the framework.) > > Cmake stuff: > > Found Tclsh: /opt/local/bin/tclsh (found version "8.5") > -- Found TCL: /System/Library/Frameworks/tcl.framework > -- Found TCLTK: /System/Library/Frameworks/tcl.framework > -- Found TK: /System/Library/Frameworks/tk.framework > -- Looking for include paths and libraries for Tcl/Tk - found > -- Looking for tclsh > -- Looking for tclsh - found > -- TCL_TCLSH = /opt/local/bin/tclsh > -- TCL_INCLUDE_PATH = /System/Library/Frameworks/Tcl.framework/Headers > -- TCL_LIBRARY = /System/Library/Frameworks/tcl.framework > -- TK_INCLUDE_PATH = /System/Library/Frameworks/Tk.framework/Headers;/usr/include > -- TK_LIBRARY = /System/Library/Frameworks/tk.framework > > > Here is the error report for NON_TRANSITIVE=ON: > > > Linking C shared library libplplottcltkd.dylib > cd /usr/local/plplot_build_dir/bindings/tcl && /opt/local/bin/cmake -E cmake_link_script CMakeFiles/plplottcltkd.dir/link.txt --verbose=1 > /usr/local/adacore-gnat-2011/bin/gcc -dynamiclib -Wl,-headerpad_max_install_names -single_module -compatibility_version 9.0.0 -current_version 9.2.0 -o libplplottcltkd.9.2.0.dylib -install_name /usr/local/plplot_build_dir/bindings/tcl/libplplottcltkd.9.dylib CMakeFiles/plplottcltkd.dir/tclAPI.c.o CMakeFiles/plplottcltkd.dir/tclMain.c.o CMakeFiles/plplottcltkd.dir/__/tk/Pltk_Init.c.o CMakeFiles/plplottcltkd.dir/__/tk/plframe.c.o CMakeFiles/plplottcltkd.dir/__/tk/plr.c.o CMakeFiles/plplottcltkd.dir/__/tk/tcpip.c.o CMakeFiles/plplottcltkd.dir/__/tk/tkMain.c.o libtclmatrixd.9.2.0.dylib ../../src/libplplotd.11.0.0.dylib -framework tcl -framework tk > Undefined symbols for architecture x86_64: > "_XLookupString", referenced from: > _PlFrameKeyEH in plframe.c.o > "_XFlush", referenced from: > _DisplayPlFrame in plframe.c.o > ld: symbol(s) not found for architecture x86_64 > collect2: ld returned 1 exit status > make[2]: *** [bindings/tcl/libplplottcltkd.9.2.0.dylib] Error 1 > make[1]: *** [bindings/tcl/CMakeFiles/plplottcltkd.dir/all] Error 2 > make: *** [all] Error 2 > > > With NON_TRANSITIVE=OFF, the error is the same but with some extra libraries being linked: > > > Linking C shared library libplplottcltkd.dylib > cd /usr/local/plplot_build_dir/bindings/tcl && /opt/local/bin/cmake -E cmake_link_script CMakeFiles/plplottcltkd.dir/link.txt --verbose=1 > /usr/local/adacore-gnat-2011/bin/gcc -dynamiclib -Wl,-headerpad_max_install_names -single_module -compatibility_version 9.0.0 -current_version 9.2.0 -o libplplottcltkd.9.2.0.dylib -install_name /usr/local/plplot_build_dir/bindings/tcl/libplplottcltkd.9.dylib CMakeFiles/plplottcltkd.dir/tclAPI.c.o CMakeFiles/plplottcltkd.dir/tclMain.c.o CMakeFiles/plplottcltkd.dir/__/tk/Pltk_Init.c.o CMakeFiles/plplottcltkd.dir/__/tk/plframe.c.o CMakeFiles/plplottcltkd.dir/__/tk/plr.c.o CMakeFiles/plplottcltkd.dir/__/tk/tcpip.c.o CMakeFiles/plplottcltkd.dir/__/tk/tkMain.c.o libtclmatrixd.9.2.0.dylib ../../src/libplplotd.11.0.0.dylib -framework tcl -framework tk /usr/lib/libltdl.dylib /usr/lib/libdl.dylib ../../lib/csa/libcsirocsa.0.0.1.dylib ../../lib/qsastime/libqsastime.0.0.1.dylib /usr/lib/libm.dylib > Undefined symbols for architecture x86_64: > "_XLookupString", referenced from: > _PlFrameKeyEH in plframe.c.o > "_XFlush", referenced from: > _DisplayPlFrame in plframe.c.o > ld: symbol(s) not found for architecture x86_64 > collect2: ld returned 1 exit status > make[2]: *** [bindings/tcl/libplplottcltkd.9.2.0.dylib] Error 1 > make[1]: *** [bindings/tcl/CMakeFiles/plplottcltkd.dir/all] Error 2 > make: *** [all] Error 2 > > IIRC there was at the beginning of this thread the suggestion that there might be something wrong with the X11 libraries. > > Jerry Also, the undefined symbols are the same if I use the "factory" or "MacPorts" X11 libraries. Jerry |
From: Jerry <lan...@qw...> - 2012-08-21 03:40:08
|
> > Also, the undefined symbols are the same if I use the "factory" or "MacPorts" X11 libraries. > > Jerry > There were comments about this (Tcl/Tk X11) at the beginning of the thread, "Can't build on OS X Lion." Maybe I shouldn't have started a new thread. Jerry |
From: Andrew R. <and...@us...> - 2012-08-21 08:24:47
|
On Mon, Aug 20, 2012 at 08:36:47PM -0700, Jerry wrote: > > On Aug 20, 2012, at 8:11 PM, Jerry wrote: > > > Now I wonder if we could start working towards rehabilitating Tcl/Tk on OS X. I say "rehabilitate" because I had been building this without problems for years. > > > > With NON_TRANSITIVE=ON or NON_TRANSITIVE=OFF, ENABLE_tcl=ON, and ENABLE_tk=ON, the build fails as below. FWIW, my OS X has two Tcl and Tk installations, and it looks like cmake is using the "factory" versions of the headers and libraries (the so-called "framework builds") but tclsh from Macports (in /opt). (All of the tcl stuff is also in /usr/bin or /usr/lib but they are links to the framework.) > > > > Cmake stuff: > > > > Found Tclsh: /opt/local/bin/tclsh (found version "8.5") > > -- Found TCL: /System/Library/Frameworks/tcl.framework > > -- Found TCLTK: /System/Library/Frameworks/tcl.framework > > -- Found TK: /System/Library/Frameworks/tk.framework > > -- Looking for include paths and libraries for Tcl/Tk - found > > -- Looking for tclsh > > -- Looking for tclsh - found > > -- TCL_TCLSH = /opt/local/bin/tclsh > > -- TCL_INCLUDE_PATH = /System/Library/Frameworks/Tcl.framework/Headers > > -- TCL_LIBRARY = /System/Library/Frameworks/tcl.framework > > -- TK_INCLUDE_PATH = /System/Library/Frameworks/Tk.framework/Headers;/usr/include > > -- TK_LIBRARY = /System/Library/Frameworks/tk.framework > > > > > > Here is the error report for NON_TRANSITIVE=ON: > > > > > > Linking C shared library libplplottcltkd.dylib > > cd /usr/local/plplot_build_dir/bindings/tcl && /opt/local/bin/cmake -E cmake_link_script CMakeFiles/plplottcltkd.dir/link.txt --verbose=1 > > /usr/local/adacore-gnat-2011/bin/gcc -dynamiclib -Wl,-headerpad_max_install_names -single_module -compatibility_version 9.0.0 -current_version 9.2.0 -o libplplottcltkd.9.2.0.dylib -install_name /usr/local/plplot_build_dir/bindings/tcl/libplplottcltkd.9.dylib CMakeFiles/plplottcltkd.dir/tclAPI.c.o CMakeFiles/plplottcltkd.dir/tclMain.c.o CMakeFiles/plplottcltkd.dir/__/tk/Pltk_Init.c.o CMakeFiles/plplottcltkd.dir/__/tk/plframe.c.o CMakeFiles/plplottcltkd.dir/__/tk/plr.c.o CMakeFiles/plplottcltkd.dir/__/tk/tcpip.c.o CMakeFiles/plplottcltkd.dir/__/tk/tkMain.c.o libtclmatrixd.9.2.0.dylib ../../src/libplplotd.11.0.0.dylib -framework tcl -framework tk > > Undefined symbols for architecture x86_64: > > "_XLookupString", referenced from: > > _PlFrameKeyEH in plframe.c.o > > "_XFlush", referenced from: > > _DisplayPlFrame in plframe.c.o > > ld: symbol(s) not found for architecture x86_64 > > collect2: ld returned 1 exit status > > make[2]: *** [bindings/tcl/libplplottcltkd.9.2.0.dylib] Error 1 > > make[1]: *** [bindings/tcl/CMakeFiles/plplottcltkd.dir/all] Error 2 > > make: *** [all] Error 2 > > > > > > With NON_TRANSITIVE=OFF, the error is the same but with some extra libraries being linked: > > > > > > Linking C shared library libplplottcltkd.dylib > > cd /usr/local/plplot_build_dir/bindings/tcl && /opt/local/bin/cmake -E cmake_link_script CMakeFiles/plplottcltkd.dir/link.txt --verbose=1 > > /usr/local/adacore-gnat-2011/bin/gcc -dynamiclib -Wl,-headerpad_max_install_names -single_module -compatibility_version 9.0.0 -current_version 9.2.0 -o libplplottcltkd.9.2.0.dylib -install_name /usr/local/plplot_build_dir/bindings/tcl/libplplottcltkd.9.dylib CMakeFiles/plplottcltkd.dir/tclAPI.c.o CMakeFiles/plplottcltkd.dir/tclMain.c.o CMakeFiles/plplottcltkd.dir/__/tk/Pltk_Init.c.o CMakeFiles/plplottcltkd.dir/__/tk/plframe.c.o CMakeFiles/plplottcltkd.dir/__/tk/plr.c.o CMakeFiles/plplottcltkd.dir/__/tk/tcpip.c.o CMakeFiles/plplottcltkd.dir/__/tk/tkMain.c.o libtclmatrixd.9.2.0.dylib ../../src/libplplotd.11.0.0.dylib -framework tcl -framework tk /usr/lib/libltdl.dylib /usr/lib/libdl.dylib ../../lib/csa/libcsirocsa.0.0.1.dylib ../../lib/qsastime/libqsastime.0.0.1.dylib /usr/lib/libm.dylib > > Undefined symbols for architecture x86_64: > > "_XLookupString", referenced from: > > _PlFrameKeyEH in plframe.c.o > > "_XFlush", referenced from: > > _DisplayPlFrame in plframe.c.o > > ld: symbol(s) not found for architecture x86_64 > > collect2: ld returned 1 exit status > > make[2]: *** [bindings/tcl/libplplottcltkd.9.2.0.dylib] Error 1 > > make[1]: *** [bindings/tcl/CMakeFiles/plplottcltkd.dir/all] Error 2 > > make: *** [all] Error 2 > > > > IIRC there was at the beginning of this thread the suggestion that there might be something wrong with the X11 libraries. > > > > Jerry > > Also, the undefined symbols are the same if I use the "factory" or "MacPorts" X11 libraries. Looks to me like libplplottcltkd is not being explicitly linked against the X libraries. It's the same on Linux, but Linux seems more forgiving and picks up the linkage indirectly. From the Qt issues it seems Mac OS-X is more demanding on correct linkage. Latest check-in should add these linkages explicitly. Does this help? Andrew |
From: Jerry <lan...@qw...> - 2012-08-21 11:12:39
|
On Aug 21, 2012, at 1:24 AM, Andrew Ross wrote: > On Mon, Aug 20, 2012 at 08:36:47PM -0700, Jerry wrote: >> >> On Aug 20, 2012, at 8:11 PM, Jerry wrote: >> >>> Now I wonder if we could start working towards rehabilitating Tcl/Tk on OS X. I say "rehabilitate" because I had been building this without problems for years. >>> >>> With NON_TRANSITIVE=ON or NON_TRANSITIVE=OFF, ENABLE_tcl=ON, and ENABLE_tk=ON, the build fails as below. FWIW, my OS X has two Tcl and Tk installations, and it looks like cmake is using the "factory" versions of the headers and libraries (the so-called "framework builds") but tclsh from Macports (in /opt). (All of the tcl stuff is also in /usr/bin or /usr/lib but they are links to the framework.) >>> >>> Cmake stuff: >>> >>> Found Tclsh: /opt/local/bin/tclsh (found version "8.5") >>> -- Found TCL: /System/Library/Frameworks/tcl.framework >>> -- Found TCLTK: /System/Library/Frameworks/tcl.framework >>> -- Found TK: /System/Library/Frameworks/tk.framework >>> -- Looking for include paths and libraries for Tcl/Tk - found >>> -- Looking for tclsh >>> -- Looking for tclsh - found >>> -- TCL_TCLSH = /opt/local/bin/tclsh >>> -- TCL_INCLUDE_PATH = /System/Library/Frameworks/Tcl.framework/Headers >>> -- TCL_LIBRARY = /System/Library/Frameworks/tcl.framework >>> -- TK_INCLUDE_PATH = /System/Library/Frameworks/Tk.framework/Headers;/usr/include >>> -- TK_LIBRARY = /System/Library/Frameworks/tk.framework >>> >>> >>> Here is the error report for NON_TRANSITIVE=ON: >>> >>> >>> Linking C shared library libplplottcltkd.dylib >>> cd /usr/local/plplot_build_dir/bindings/tcl && /opt/local/bin/cmake -E cmake_link_script CMakeFiles/plplottcltkd.dir/link.txt --verbose=1 >>> /usr/local/adacore-gnat-2011/bin/gcc -dynamiclib -Wl,-headerpad_max_install_names -single_module -compatibility_version 9.0.0 -current_version 9.2.0 -o libplplottcltkd.9.2.0.dylib -install_name /usr/local/plplot_build_dir/bindings/tcl/libplplottcltkd.9.dylib CMakeFiles/plplottcltkd.dir/tclAPI.c.o CMakeFiles/plplottcltkd.dir/tclMain.c.o CMakeFiles/plplottcltkd.dir/__/tk/Pltk_Init.c.o CMakeFiles/plplottcltkd.dir/__/tk/plframe.c.o CMakeFiles/plplottcltkd.dir/__/tk/plr.c.o CMakeFiles/plplottcltkd.dir/__/tk/tcpip.c.o CMakeFiles/plplottcltkd.dir/__/tk/tkMain.c.o libtclmatrixd.9.2.0.dylib ../../src/libplplotd.11.0.0.dylib -framework tcl -framework tk >>> Undefined symbols for architecture x86_64: >>> "_XLookupString", referenced from: >>> _PlFrameKeyEH in plframe.c.o >>> "_XFlush", referenced from: >>> _DisplayPlFrame in plframe.c.o >>> ld: symbol(s) not found for architecture x86_64 >>> collect2: ld returned 1 exit status >>> make[2]: *** [bindings/tcl/libplplottcltkd.9.2.0.dylib] Error 1 >>> make[1]: *** [bindings/tcl/CMakeFiles/plplottcltkd.dir/all] Error 2 >>> make: *** [all] Error 2 >>> >>> >>> With NON_TRANSITIVE=OFF, the error is the same but with some extra libraries being linked: >>> >>> >>> Linking C shared library libplplottcltkd.dylib >>> cd /usr/local/plplot_build_dir/bindings/tcl && /opt/local/bin/cmake -E cmake_link_script CMakeFiles/plplottcltkd.dir/link.txt --verbose=1 >>> /usr/local/adacore-gnat-2011/bin/gcc -dynamiclib -Wl,-headerpad_max_install_names -single_module -compatibility_version 9.0.0 -current_version 9.2.0 -o libplplottcltkd.9.2.0.dylib -install_name /usr/local/plplot_build_dir/bindings/tcl/libplplottcltkd.9.dylib CMakeFiles/plplottcltkd.dir/tclAPI.c.o CMakeFiles/plplottcltkd.dir/tclMain.c.o CMakeFiles/plplottcltkd.dir/__/tk/Pltk_Init.c.o CMakeFiles/plplottcltkd.dir/__/tk/plframe.c.o CMakeFiles/plplottcltkd.dir/__/tk/plr.c.o CMakeFiles/plplottcltkd.dir/__/tk/tcpip.c.o CMakeFiles/plplottcltkd.dir/__/tk/tkMain.c.o libtclmatrixd.9.2.0.dylib ../../src/libplplotd.11.0.0.dylib -framework tcl -framework tk /usr/lib/libltdl.dylib /usr/lib/libdl.dylib ../../lib/csa/libcsirocsa.0.0.1.dylib ../../lib/qsastime/libqsastime.0.0.1.dylib /usr/lib/libm.dylib >>> Undefined symbols for architecture x86_64: >>> "_XLookupString", referenced from: >>> _PlFrameKeyEH in plframe.c.o >>> "_XFlush", referenced from: >>> _DisplayPlFrame in plframe.c.o >>> ld: symbol(s) not found for architecture x86_64 >>> collect2: ld returned 1 exit status >>> make[2]: *** [bindings/tcl/libplplottcltkd.9.2.0.dylib] Error 1 >>> make[1]: *** [bindings/tcl/CMakeFiles/plplottcltkd.dir/all] Error 2 >>> make: *** [all] Error 2 >>> >>> IIRC there was at the beginning of this thread the suggestion that there might be something wrong with the X11 libraries. >>> >>> Jerry >> >> Also, the undefined symbols are the same if I use the "factory" or "MacPorts" X11 libraries. > > Looks to me like libplplottcltkd is not being explicitly linked against > the X libraries. It's the same on Linux, but Linux seems more > forgiving and picks up the linkage indirectly. From the Qt issues it > seems Mac OS-X is more demanding on correct linkage. > > Latest check-in should add these linkages explicitly. > > Does this help? > > Andrew With tcl and tk turned on, SVN 12219 fails thus: Linking C shared module tkwin.so cd /usr/local/plplot_build_dir/drivers && /opt/local/bin/cmake -E cmake_link_script CMakeFiles/tkwin.dir/link.txt --verbose=1 /usr/local/adacore-gnat-2011/bin/gcc -bundle -Wl,-headerpad_max_install_names -o tkwin.so CMakeFiles/tkwin.dir/tkwin.c.o CMakeFiles/tkwin.dir/__/bindings/tk-x-plat/Plplotter_Init.c.o CMakeFiles/tkwin.dir/__/bindings/tk-x-plat/plplotter.c.o ../src/libplplotd.11.0.0.dylib /usr/lib/libm.dylib ../bindings/tcl/libplplottcltkd.9.2.0.dylib -framework tcl -framework tk ../src/libplplotd.11.0.0.dylib Undefined symbols for architecture x86_64: "_XOpenDisplay", referenced from: _plD_open_tkwin in tkwin.c.o "_XSynchronize", referenced from: _plD_open_tkwin in tkwin.c.o "_XFlush", referenced from: _plD_eop_tkwin in tkwin.c.o _ExposeCmd in tkwin.c.o _DisplayPlPlotter in plplotter.c.o "_XCloseDisplay", referenced from: _plD_tidy_tkwin in tkwin.c.o "_XFreePixmap", referenced from: _ResizeCmd in tkwin.c.o "_XGetErrorText", referenced from: _CreatePixmapErrorHandler in tkwin.c.o ld: symbol(s) not found for architecture x86_64 collect2: ld returned 1 exit status make[2]: *** [drivers/tkwin.so] Error 1 make[1]: *** [drivers/CMakeFiles/tkwin.dir/all] Error 2 make: *** [all] Error 2 Jerry |
From: Andrew R. <and...@us...> - 2012-08-21 11:45:50
|
On Tue, Aug 21, 2012 at 04:12:27AM -0700, Jerry wrote: > > On Aug 21, 2012, at 1:24 AM, Andrew Ross wrote: > > > On Mon, Aug 20, 2012 at 08:36:47PM -0700, Jerry wrote: > >> > >> On Aug 20, 2012, at 8:11 PM, Jerry wrote: > >> > >>> Now I wonder if we could start working towards rehabilitating Tcl/Tk on OS X. I say "rehabilitate" because I had been building this without problems for years. > >>> > >>> With NON_TRANSITIVE=ON or NON_TRANSITIVE=OFF, ENABLE_tcl=ON, and ENABLE_tk=ON, the build fails as below. FWIW, my OS X has two Tcl and Tk installations, and it looks like cmake is using the "factory" versions of the headers and libraries (the so-called "framework builds") but tclsh from Macports (in /opt). (All of the tcl stuff is also in /usr/bin or /usr/lib but they are links to the framework.) > >>> > >>> Cmake stuff: > >>> > >>> Found Tclsh: /opt/local/bin/tclsh (found version "8.5") > >>> -- Found TCL: /System/Library/Frameworks/tcl.framework > >>> -- Found TCLTK: /System/Library/Frameworks/tcl.framework > >>> -- Found TK: /System/Library/Frameworks/tk.framework > >>> -- Looking for include paths and libraries for Tcl/Tk - found > >>> -- Looking for tclsh > >>> -- Looking for tclsh - found > >>> -- TCL_TCLSH = /opt/local/bin/tclsh > >>> -- TCL_INCLUDE_PATH = /System/Library/Frameworks/Tcl.framework/Headers > >>> -- TCL_LIBRARY = /System/Library/Frameworks/tcl.framework > >>> -- TK_INCLUDE_PATH = /System/Library/Frameworks/Tk.framework/Headers;/usr/include > >>> -- TK_LIBRARY = /System/Library/Frameworks/tk.framework > >>> > >>> > >>> Here is the error report for NON_TRANSITIVE=ON: > >>> > >>> > >>> Linking C shared library libplplottcltkd.dylib > >>> cd /usr/local/plplot_build_dir/bindings/tcl && /opt/local/bin/cmake -E cmake_link_script CMakeFiles/plplottcltkd.dir/link.txt --verbose=1 > >>> /usr/local/adacore-gnat-2011/bin/gcc -dynamiclib -Wl,-headerpad_max_install_names -single_module -compatibility_version 9.0.0 -current_version 9.2.0 -o libplplottcltkd.9.2.0.dylib -install_name /usr/local/plplot_build_dir/bindings/tcl/libplplottcltkd.9.dylib CMakeFiles/plplottcltkd.dir/tclAPI.c.o CMakeFiles/plplottcltkd.dir/tclMain.c.o CMakeFiles/plplottcltkd.dir/__/tk/Pltk_Init.c.o CMakeFiles/plplottcltkd.dir/__/tk/plframe.c.o CMakeFiles/plplottcltkd.dir/__/tk/plr.c.o CMakeFiles/plplottcltkd.dir/__/tk/tcpip.c.o CMakeFiles/plplottcltkd.dir/__/tk/tkMain.c.o libtclmatrixd.9.2.0.dylib ../../src/libplplotd.11.0.0.dylib -framework tcl -framework tk > >>> Undefined symbols for architecture x86_64: > >>> "_XLookupString", referenced from: > >>> _PlFrameKeyEH in plframe.c.o > >>> "_XFlush", referenced from: > >>> _DisplayPlFrame in plframe.c.o > >>> ld: symbol(s) not found for architecture x86_64 > >>> collect2: ld returned 1 exit status > >>> make[2]: *** [bindings/tcl/libplplottcltkd.9.2.0.dylib] Error 1 > >>> make[1]: *** [bindings/tcl/CMakeFiles/plplottcltkd.dir/all] Error 2 > >>> make: *** [all] Error 2 > >>> > >>> > >>> With NON_TRANSITIVE=OFF, the error is the same but with some extra libraries being linked: > >>> > >>> > >>> Linking C shared library libplplottcltkd.dylib > >>> cd /usr/local/plplot_build_dir/bindings/tcl && /opt/local/bin/cmake -E cmake_link_script CMakeFiles/plplottcltkd.dir/link.txt --verbose=1 > >>> /usr/local/adacore-gnat-2011/bin/gcc -dynamiclib -Wl,-headerpad_max_install_names -single_module -compatibility_version 9.0.0 -current_version 9.2.0 -o libplplottcltkd.9.2.0.dylib -install_name /usr/local/plplot_build_dir/bindings/tcl/libplplottcltkd.9.dylib CMakeFiles/plplottcltkd.dir/tclAPI.c.o CMakeFiles/plplottcltkd.dir/tclMain.c.o CMakeFiles/plplottcltkd.dir/__/tk/Pltk_Init.c.o CMakeFiles/plplottcltkd.dir/__/tk/plframe.c.o CMakeFiles/plplottcltkd.dir/__/tk/plr.c.o CMakeFiles/plplottcltkd.dir/__/tk/tcpip.c.o CMakeFiles/plplottcltkd.dir/__/tk/tkMain.c.o libtclmatrixd.9.2.0.dylib ../../src/libplplotd.11.0.0.dylib -framework tcl -framework tk /usr/lib/libltdl.dylib /usr/lib/libdl.dylib ../../lib/csa/libcsirocsa.0.0.1.dylib ../../lib/qsastime/libqsastime.0.0.1.dylib /usr/lib/libm.dylib > >>> Undefined symbols for architecture x86_64: > >>> "_XLookupString", referenced from: > >>> _PlFrameKeyEH in plframe.c.o > >>> "_XFlush", referenced from: > >>> _DisplayPlFrame in plframe.c.o > >>> ld: symbol(s) not found for architecture x86_64 > >>> collect2: ld returned 1 exit status > >>> make[2]: *** [bindings/tcl/libplplottcltkd.9.2.0.dylib] Error 1 > >>> make[1]: *** [bindings/tcl/CMakeFiles/plplottcltkd.dir/all] Error 2 > >>> make: *** [all] Error 2 > >>> > >>> IIRC there was at the beginning of this thread the suggestion that there might be something wrong with the X11 libraries. > >>> > >>> Jerry > >> > >> Also, the undefined symbols are the same if I use the "factory" or "MacPorts" X11 libraries. > > > > Looks to me like libplplottcltkd is not being explicitly linked against > > the X libraries. It's the same on Linux, but Linux seems more > > forgiving and picks up the linkage indirectly. From the Qt issues it > > seems Mac OS-X is more demanding on correct linkage. > > > > Latest check-in should add these linkages explicitly. > > > > Does this help? > > > > Andrew > > With tcl and tk turned on, SVN 12219 fails thus: > > Linking C shared module tkwin.so > cd /usr/local/plplot_build_dir/drivers && /opt/local/bin/cmake -E cmake_link_script CMakeFiles/tkwin.dir/link.txt --verbose=1 > /usr/local/adacore-gnat-2011/bin/gcc -bundle -Wl,-headerpad_max_install_names -o tkwin.so CMakeFiles/tkwin.dir/tkwin.c.o CMakeFiles/tkwin.dir/__/bindings/tk-x-plat/Plplotter_Init.c.o CMakeFiles/tkwin.dir/__/bindings/tk-x-plat/plplotter.c.o ../src/libplplotd.11.0.0.dylib /usr/lib/libm.dylib ../bindings/tcl/libplplottcltkd.9.2.0.dylib -framework tcl -framework tk ../src/libplplotd.11.0.0.dylib > Undefined symbols for architecture x86_64: > "_XOpenDisplay", referenced from: > _plD_open_tkwin in tkwin.c.o > "_XSynchronize", referenced from: > _plD_open_tkwin in tkwin.c.o > "_XFlush", referenced from: > _plD_eop_tkwin in tkwin.c.o > _ExposeCmd in tkwin.c.o > _DisplayPlPlotter in plplotter.c.o > "_XCloseDisplay", referenced from: > _plD_tidy_tkwin in tkwin.c.o > "_XFreePixmap", referenced from: > _ResizeCmd in tkwin.c.o > "_XGetErrorText", referenced from: > _CreatePixmapErrorHandler in tkwin.c.o > ld: symbol(s) not found for architecture x86_64 > collect2: ld returned 1 exit status > make[2]: *** [drivers/tkwin.so] Error 1 > make[1]: *** [drivers/CMakeFiles/tkwin.dir/all] Error 2 > make: *** [all] Error 2 Jerry, We're getting there! I've now added X11_LIBRARIES to the tkwin driver link flags. Cheers Andrew |
From: Jerry <lan...@qw...> - 2012-08-22 05:56:38
|
On Aug 21, 2012, at 4:45 AM, Andrew Ross wrote: > Jerry, > > We're getting there! I've now added X11_LIBRARIES to the tkwin driver link flags. > > Cheers > > Andrew 12221 builds Tk/Tcl without errors. Which gets to the place that I have always been with these demos--they don't run. Here's the synopsis--I hope it's not too confusing. As I understand it, my computer has three ways to run wish: an X11 version, a native ("Aqua") version called plserver which appears to be a specialized version of the factory-installed wish which is the third way. Following the instructions in README.tkdemos: Only xtk01 is built--xtk02 etc. are not built. Typing ./xtk01 -f tk01 results in the X11 server launching and a window displaying for about 1/10 second before disappearing. The window seems to have some buttons across the top with the words "One", ... , "Four", "Exit" and additional text something like "TK Control of x01c from TK" but there is no plot--the rest of the window is blank. The following text appears in the terminal: X Error of failed request: BadWindow (invalid Window parameter) Major opcode of failed request: 2 (X_ChangeWindowAttributes) Resource id in failed request: 0xb8c0c90 Serial number of failed request: 30 Current serial number in output stream: 33 Starting plserver at /usr/local/plplot/bin/plserver starts a native app called plserver which displays a small blank window from which I can "Run Widget Demo" OK. Typing source tkdemos.tcl causes a blank window to appear for about 1/10 second. The following appears in the terminal: % source tkdemos.tcl % X Error of failed request: BadWindow (invalid Window parameter) Major opcode of failed request: 2 (X_ChangeWindowAttributes) Resource id in failed request: 0x10b47e90 Serial number of failed request: 30 Current serial number in output stream: 33 Running /usr/local/plplot/bin/plserver -h causes Segmentation fault: 11. Running $ wish launches X11 and the X11 wish program. Following the instructions in the readme, % package require Pltk dlsym(0x7fd3b14d5e00, Pltk_Init): symbol not founddlsym(0x7fd3b14d5e00, Pltk_SafeInit): symbol not founddlsym(0x7fd3b14d5e00, Pltk_Unload): symbol not founddlsym(0x7fd3b14d5e00, Pltk_SafeUnload): symbol not foundcouldn't find procedure Pltk_Init % source tkdemos.tcl invalid command name "plstdwin" and then nothing interesting, no window drawn. If instead I run the factory-installed wish and follow the instructions, I get: %lappend auto_path /usr/local/plplot/share/plplot5.9.9 ...whole lotta paths... % package require Pltk dlsym(0x7fd171822450, Pltk_Init): symbol not founddlsym(0x7fd171822450, Pltk_SafeInit): symbol not founddlsym(0x7fd171822450, Pltk_Unload): symbol not founddlsym(0x7fd171822450, Pltk_SafeUnload): symbol not foundcouldn't find procedure Pltk_Init % source tkdemos.tcl invalid command name "plstdwin" and again and then nothing interesting, no window drawn. With respect to the tcl demos as described in README.tcldemos-- $ ./x01 ./x01: line 13: exec: pltcl: not found After adding /usr/local/plplot/bin/ to my PATH and repeating ./x01, the Plotting Options text menu is repeated several times in the terminal window. Choosing e.g. Cairo PDF Driver causes this output to appear many times: (process:89116): Pango-WARNING **: pango_layout_set_markup_with_accel: Value of 'size' attribute on <span> tag on line 1 could not be parsed; should be an integer, or a string such as 'small', not '-2147483648' and a valid PDF is created but which is an all-black page. Running e.g. $ ./x01c and selecting Tcl/TK Window causes a native program plserver to run. It has drop-down menus File and Help. File has an About... which opens a text window describing Plplot. The normal File menu has a functioning Run Widgets Demo. The window is otherwise blank, with no plot. There is a second program which runs at the same time called x01c and appears to be a standard native wish with some default-looking menu commands (Source, Run Widget Demo) but no window of its own. When I Quit either of these programs using the available menu item, they both hang and have to be force-quit. Running x01c and selecting New tk driver results in this: *** PLPLOT ERROR, IMMEDIATE EXIT *** No tk plframe widget to connect to Program aborted Jerry |
From: Alan W. I. <ir...@be...> - 2012-08-22 16:45:14
|
On 2012-08-21 22:56-0700 Jerry wrote: > > On Aug 21, 2012, at 4:45 AM, Andrew Ross wrote: > >> Jerry, >> >> We're getting there! I've now added X11_LIBRARIES to the tkwin driver link flags. >> >> Cheers >> >> Andrew > > 12221 builds Tk/Tcl without errors. Which gets to the place that I have always been with these demos--they don't run. Here's the synopsis--I hope it's not too confusing. > > As I understand it, my computer has three ways to run wish: an X11 version, a native ("Aqua") version called plserver which appears to be a specialized version of the factory-installed wish which is the third way. > > > Following the instructions in README.tkdemos: Hmm. Those instructions may be dated, make Linux-based assumptions, have unmentioned dependencies etc. You might also be using versions of Tcl or Tk that are not consistent with the ones used to build PLplot (which would almost be guaranteed to produce bad results). So please rebuild from scratch using the CMake option -DBUILD_TEST=ON (if that isn't what you use at the moment) and then try the following tests make test_tk_01 make test_tk_02 make test_tk_03 make test_tk_04 (These are all dependencies of the much larger test target "test_interactive" which you might want to try some day when you get all the interactive pieces such as the above tests working properly.) All of the above tests work fine for me on Linux. If any of the above tests don't run on your platform, I am not sure I can help you further since I am not a Tcl/Tk expert, but at least those with Tcl/Tk expertise here will know exactly what was run (see examples/CMakeLists.txt for the details and all the dependencies that have to be satisfied) if you do find any problems with the above tests. Alan the C > > Only xtk01 is built--xtk02 etc. are not built. > > Typing ./xtk01 -f tk01 results in the X11 server launching and a window displaying for about 1/10 second before disappearing. The window seems to have some buttons across the top with the words "One", ... , "Four", "Exit" and additional text something like "TK Control of x01c from TK" but there is no plot--the rest of the window is blank. The following text appears in the terminal: > > X Error of failed request: BadWindow (invalid Window parameter) > Major opcode of failed request: 2 (X_ChangeWindowAttributes) > Resource id in failed request: 0xb8c0c90 > Serial number of failed request: 30 > Current serial number in output stream: 33 > > > Starting plserver at /usr/local/plplot/bin/plserver starts a native app called plserver which displays a small blank window from which I can "Run Widget Demo" OK. Typing source tkdemos.tcl causes a blank window to appear for about 1/10 second. The following appears in the terminal: > > % source tkdemos.tcl > % X Error of failed request: BadWindow (invalid Window parameter) > Major opcode of failed request: 2 (X_ChangeWindowAttributes) > Resource id in failed request: 0x10b47e90 > Serial number of failed request: 30 > Current serial number in output stream: 33 > > > Running > /usr/local/plplot/bin/plserver -h > causes Segmentation fault: 11. > > > Running $ wish launches X11 and the X11 wish program. Following the instructions in the readme, > > % package require Pltk > dlsym(0x7fd3b14d5e00, Pltk_Init): symbol not founddlsym(0x7fd3b14d5e00, Pltk_SafeInit): symbol not founddlsym(0x7fd3b14d5e00, Pltk_Unload): symbol not founddlsym(0x7fd3b14d5e00, Pltk_SafeUnload): symbol not foundcouldn't find procedure Pltk_Init > % source tkdemos.tcl > invalid command name "plstdwin" > > and then nothing interesting, no window drawn. > > > If instead I run the factory-installed wish and follow the instructions, I get: > > %lappend auto_path /usr/local/plplot/share/plplot5.9.9 > ...whole lotta paths... > % package require Pltk > dlsym(0x7fd171822450, Pltk_Init): symbol not founddlsym(0x7fd171822450, Pltk_SafeInit): symbol not founddlsym(0x7fd171822450, Pltk_Unload): symbol not founddlsym(0x7fd171822450, Pltk_SafeUnload): symbol not foundcouldn't find procedure Pltk_Init > % source tkdemos.tcl > invalid command name "plstdwin" > > and again and then nothing interesting, no window drawn. > > > > With respect to the tcl demos as described in README.tcldemos-- > > $ ./x01 > ./x01: line 13: exec: pltcl: not found > > After adding /usr/local/plplot/bin/ to my PATH and repeating ./x01, the Plotting Options text menu is repeated several times in the terminal window. Choosing e.g. Cairo PDF Driver causes this output to appear many times: > > (process:89116): Pango-WARNING **: pango_layout_set_markup_with_accel: Value of 'size' attribute on <span> tag on line 1 could not be parsed; should be an integer, or a string such as 'small', not '-2147483648' > > and a valid PDF is created but which is an all-black page. > > > Running e.g. $ ./x01c and selecting Tcl/TK Window causes a native program plserver to run. It has drop-down menus File and Help. File has an About... which opens a text window describing Plplot. The normal File menu has a functioning Run Widgets Demo. The window is otherwise blank, with no plot. There is a second program which runs at the same time called x01c and appears to be a standard native wish with some default-looking menu commands (Source, Run Widget Demo) but no window of its own. When I Quit either of these programs using the available menu item, they both hang and have to be force-quit. > > Running x01c and selecting New tk driver results in this: > > *** PLPLOT ERROR, IMMEDIATE EXIT *** > No tk plframe widget to connect to > Program aborted > > Jerry > > > > ------------------------------------------------------------------------------ > Live Security Virtual Conference > Exclusive live event will cover all the ways today's security and > threat landscape has changed and how IT managers can respond. Discussions > will include endpoint security, mobile security and the latest in malware > threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ > _______________________________________________ > Plplot-devel mailing list > Plp...@li... > https://lists.sourceforge.net/lists/listinfo/plplot-devel > __________________________ Alan W. Irwin Astronomical research affiliation with Department of Physics and Astronomy, University of Victoria (astrowww.phys.uvic.ca). Programming affiliations with the FreeEOS equation-of-state implementation for stellar interiors (freeeos.sf.net); the Time Ephemerides project (timeephem.sf.net); PLplot scientific plotting software package (plplot.sf.net); the libLASi project (unifont.org/lasi); the Loads of Linux Links project (loll.sf.net); and the Linux Brochure Project (lbproject.sf.net). __________________________ Linux-powered Science __________________________ |
From: Jerry <lan...@qw...> - 2012-08-23 04:31:56
|
On Aug 22, 2012, at 9:45 AM, Alan W. Irwin wrote: >> Following the instructions in README.tkdemos: > > Hmm. Those instructions may be dated, make Linux-based assumptions, > have unmentioned dependencies etc. You might also be using versions of > Tcl or Tk that are not consistent with the ones used to build PLplot > (which would almost be guaranteed to produce bad results). So please > rebuild from scratch using the CMake option -DBUILD_TEST=ON (if that > isn't what you use at the moment) and then try the following tests > > make test_tk_01 > make test_tk_02 > make test_tk_03 > make test_tk_04 > > (These are all dependencies of the much larger test target > "test_interactive" which you might want to try some day when > you get all the interactive pieces such as the above tests > working properly.) > > All of the above tests work fine for me on Linux. If any of the above > tests don't run on your platform, I am not sure I can help you further > since I am not a Tcl/Tk expert, but at least those with Tcl/Tk > expertise here will know exactly what was run (see > examples/CMakeLists.txt for the details and all the dependencies that > have to be satisfied) if you do find any problems with the above > tests. > > Alan Alan, I tried your suggestions. I blocked the MacPorts stuff so that only the factory Tcl/Tk stuff is visible. When building, I saw Scanning dependencies of target test_tk_01 make -f examples/CMakeFiles/test_tk_01.dir/build.make examples/CMakeFiles/test_tk_01.dir/build cd /usr/local/plplot_build_dir/examples && tk/xtk01 -f /usr/local/plplot_build_dir/examples/tk/tk01 X Error of failed request: BadWindow (invalid Window parameter) Major opcode of failed request: 2 (X_ChangeWindowAttributes) Resource id in failed request: 0x21a5a690 Serial number of failed request: 30 Current serial number in output stream: 33 make[3]: *** [examples/CMakeFiles/test_tk_01] Error 1 make[2]: *** [examples/CMakeFiles/test_tk_01.dir/all] Error 2 make[1]: *** [examples/CMakeFiles/test_tk_01.dir/rule] Error 2 make: *** [test_tk_01] Error 2 make: *** No rule to make target `test_tk_02'. Stop. and similar output for test_tk_03 and test_tk_o4. At the test phase, all of the Tcl tests passed. When I try to run a tcl example myself, I get a black page, e.g., in ps or svg or qtwidget, although a largish and valid file in the cases of ps and svg. I gather that I don't know how to run Tcl programs. When I run e.g. a C example and choose device Tcl/TK Window, plserver runs but nothing is displayed in what I assume is the plotting part of the window--just a white space. When I Quit it, it hangs and has to be force-quit. When I run a C example and choose New tk driver, the message *** PLPLOT ERROR, IMMEDIATE EXIT *** No tk plframe widget to connect to Program aborted appears. This is pretty much the same behavior that I reported yesterday to the list except that we now know that the Tcl examples pass testing. Unless someone has any more ideas, I'm going to set this aside. Jerry |
From: Andrew R. <and...@us...> - 2012-08-23 06:24:02
|
On Wed, Aug 22, 2012 at 09:31:48PM -0700, Jerry wrote: > > On Aug 22, 2012, at 9:45 AM, Alan W. Irwin wrote: > > >> Following the instructions in README.tkdemos: > > > > Hmm. Those instructions may be dated, make Linux-based assumptions, > > have unmentioned dependencies etc. You might also be using versions of > > Tcl or Tk that are not consistent with the ones used to build PLplot > > (which would almost be guaranteed to produce bad results). So please > > rebuild from scratch using the CMake option -DBUILD_TEST=ON (if that > > isn't what you use at the moment) and then try the following tests > > > > make test_tk_01 > > make test_tk_02 > > make test_tk_03 > > make test_tk_04 > > > > (These are all dependencies of the much larger test target > > "test_interactive" which you might want to try some day when > > you get all the interactive pieces such as the above tests > > working properly.) > > > > All of the above tests work fine for me on Linux. If any of the above > > tests don't run on your platform, I am not sure I can help you further > > since I am not a Tcl/Tk expert, but at least those with Tcl/Tk > > expertise here will know exactly what was run (see > > examples/CMakeLists.txt for the details and all the dependencies that > > have to be satisfied) if you do find any problems with the above > > tests. > > > > Alan > > Alan, I tried your suggestions. I blocked the MacPorts stuff so that only the factory Tcl/Tk stuff is visible. When building, I saw > > Scanning dependencies of target test_tk_01 > make -f examples/CMakeFiles/test_tk_01.dir/build.make examples/CMakeFiles/test_tk_01.dir/build > cd /usr/local/plplot_build_dir/examples && tk/xtk01 -f /usr/local/plplot_build_dir/examples/tk/tk01 > X Error of failed request: BadWindow (invalid Window parameter) > Major opcode of failed request: 2 (X_ChangeWindowAttributes) > Resource id in failed request: 0x21a5a690 > Serial number of failed request: 30 > Current serial number in output stream: 33 > make[3]: *** [examples/CMakeFiles/test_tk_01] Error 1 > make[2]: *** [examples/CMakeFiles/test_tk_01.dir/all] Error 2 > make[1]: *** [examples/CMakeFiles/test_tk_01.dir/rule] Error 2 > make: *** [test_tk_01] Error 2 > make: *** No rule to make target `test_tk_02'. Stop. > > and similar output for test_tk_03 and test_tk_o4. > > > At the test phase, all of the Tcl tests passed. > > When I try to run a tcl example myself, I get a black page, e.g., in ps or svg or qtwidget, although a largish and valid file in the cases of ps and svg. I gather that I don't know how to run Tcl programs. > > When I run e.g. a C example and choose device Tcl/TK Window, plserver runs but nothing is displayed in what I assume is the plotting part of the window--just a white space. When I Quit it, it hangs and has to be force-quit. > > When I run a C example and choose New tk driver, the message > > *** PLPLOT ERROR, IMMEDIATE EXIT *** > No tk plframe widget to connect to > Program aborted > > appears. > > This is pretty much the same behavior that I reported yesterday to the list except that we now know that the Tcl examples pass testing. > > Unless someone has any more ideas, I'm going to set this aside. It may be the way you are calling the tcl examples? Happy to talk through this with you, but I'm off on holiday now so it won't be for a couple of weeks. At least if the tests work there is nothing fundamental wrong. Regards Andrew |
From: Alan W. I. <ir...@be...> - 2012-08-23 06:46:53
|
On 2012-08-22 21:31-0700 Jerry wrote: > > On Aug 22, 2012, at 9:45 AM, Alan W. Irwin wrote: > >>> Following the instructions in README.tkdemos: >> >> Hmm. Those instructions may be dated, make Linux-based assumptions, >> have unmentioned dependencies etc. You might also be using versions of >> Tcl or Tk that are not consistent with the ones used to build PLplot >> (which would almost be guaranteed to produce bad results). So please >> rebuild from scratch using the CMake option -DBUILD_TEST=ON (if that >> isn't what you use at the moment) and then try the following tests >> >> make test_tk_01 >> make test_tk_02 >> make test_tk_03 >> make test_tk_04 >> >> (These are all dependencies of the much larger test target >> "test_interactive" which you might want to try some day when >> you get all the interactive pieces such as the above tests >> working properly.) >> >> All of the above tests work fine for me on Linux. If any of the above >> tests don't run on your platform, I am not sure I can help you further >> since I am not a Tcl/Tk expert, but at least those with Tcl/Tk >> expertise here will know exactly what was run (see >> examples/CMakeLists.txt for the details and all the dependencies that >> have to be satisfied) if you do find any problems with the above >> tests. >> >> Alan > > Alan, I tried your suggestions. I blocked the MacPorts stuff so that only the factory Tcl/Tk stuff is visible. When building, I saw > > Scanning dependencies of target test_tk_01 > make -f examples/CMakeFiles/test_tk_01.dir/build.make examples/CMakeFiles/test_tk_01.dir/build > cd /usr/local/plplot_build_dir/examples && tk/xtk01 -f /usr/local/plplot_build_dir/examples/tk/tk01 > X Error of failed request: BadWindow (invalid Window parameter) > Major opcode of failed request: 2 (X_ChangeWindowAttributes) > Resource id in failed request: 0x21a5a690 > Serial number of failed request: 30 > Current serial number in output stream: 33 > make[3]: *** [examples/CMakeFiles/test_tk_01] Error 1 > make[2]: *** [examples/CMakeFiles/test_tk_01.dir/all] Error 2 > make[1]: *** [examples/CMakeFiles/test_tk_01.dir/rule] Error 2 > make: *** [test_tk_01] Error 2 > make: *** No rule to make target `test_tk_02'. Stop. > > and similar output for test_tk_03 and test_tk_o4. Hi Jerry: Do you have success with any other X application? The reason I ask is the above error message may simply mean that X is badly installed on your platform. Of course, if X were badly installed on Linux it would be catastrophic since X is so important on that platform, but my understanding is that X is not very important on Mac OS X. Therefore, on that platform you might have a bad X installation and not know about it (except by running some classical X applications such as xterm, xeyes, oclock, etc.) Alan __________________________ Alan W. Irwin Astronomical research affiliation with Department of Physics and Astronomy, University of Victoria (astrowww.phys.uvic.ca). Programming affiliations with the FreeEOS equation-of-state implementation for stellar interiors (freeeos.sf.net); the Time Ephemerides project (timeephem.sf.net); PLplot scientific plotting software package (plplot.sf.net); the libLASi project (unifont.org/lasi); the Loads of Linux Links project (loll.sf.net); and the Linux Brochure Project (lbproject.sf.net). __________________________ Linux-powered Science __________________________ |
From: Arjen M. <arj...@de...> - 2012-08-23 07:08:15
|
Hi Jerry, On 2012-08-23 08:46, Alan W. Irwin wrote: > > Hi Jerry: > > Do you have success with any other X application? The reason I ask is > the above error message may simply mean that X is badly installed on > your platform. Of course, if X were badly installed on Linux it would > be catastrophic since X is so important on that platform, but my > understanding is that X is not very important on Mac OS X. Therefore, > on that platform you might have a bad X installation and not know > about it (except by running some classical X applications such as > xterm, xeyes, oclock, etc.) > In addition to Alan's suggestions, you could try the following: 1. Start Tcl/Tk's wish 2. Type the command: pack [button .b -command {puts Hello} -text Hi] This should bring up a simple pushbutton with the label Hi and when you press it, the text Hello is printed in the console window. (Type "exit" to stop wish) If the traditional X programs and this wish example work, then we can conclude that something is wrong with the way you start the PLplot examples, though I can not see what is wrong. Unfortunately I have no OS X machine at my disposal, so I can only make guesses as to what is going on/wrong. Regards, Arjen DISCLAIMER: This message is intended exclusively for the addressee(s) and may contain confidential and privileged information. If you are not the intended recipient please notify the sender immediately and destroy this message. Unauthorized use, disclosure or copying of this message is strictly prohibited. The foundation 'Stichting Deltares', which has its seat at Delft, The Netherlands, Commercial Registration Number 41146461, is not liable in any way whatsoever for consequences and/or damages resulting from the improper, incomplete and untimely dispatch, receipt and/or content of this e-mail. |
From: Jerry <lan...@qw...> - 2012-08-23 09:20:47
|
On Aug 22, 2012, at 11:46 PM, Alan W. Irwin wrote: > Hi Jerry: > > Do you have success with any other X application? The reason I ask is > the above error message may simply mean that X is badly installed on > your platform. Of course, if X were badly installed on Linux it would > be catastrophic since X is so important on that platform, but my > understanding is that X is not very important on Mac OS X. Therefore, > on that platform you might have a bad X installation and not know > about it (except by running some classical X applications such as > xterm, xeyes, oclock, etc.) > > Alan Hi Alan, My X system as far as I know has always worked OK, both with plplot and other programs. On Plplot, X-Window (Xlib) is always the first choice and it has always worked--X launches and a graphics window appears with the plplot stuff in it. I can also run the programs you mention, and I have in the past run Grace and a version of OpenOffice among others. This is the X systems that Apple ships as part of the developer tools. Here is what I think I know about Tcl/Tk on OS X. tclsh is available at the command line. wish is also available and runs with a native ("Aqua") look and feel. These are installed either out of the box or as part of the developer tools. wish can be built for X if desired (Wikipedia) but an X version is apparently not available out of the box. When I type wish in any OS X terminal or Xterm, the native wish shell launches and can run the widget demos, all of which work and are rendered in native Aqua. So the point here is--wish on OS X runs natively, not as an X app. Typing /usr/local/plplot/bin/plserver causes a native program to run that looks exactly like wish except the background on the window which displays the list of demos is gray instead of white, and the program name that is displayed is "plserver" instead of "Wish". When I run x01c and choose device Tcl/TK Window, a native program is started called plserver but looks different--in its own window near the top is a drop-down menu with items About... and Exit. (Remember that on OS X, the standard menus are in a menu bar that is fixed at the top of the screen, not attached to each window.) When About... is chosen, a description of PLplot appears in a new window. There is another drop-down menu Help with items On Tcl/Tk, On GUI, and On Keys-- each of these opens a new window with help information. No plot appears, and as I have described before, when Quitting the program using the standard menu bar menu, it hangs and has to be force-quit. No plot ever appears. If I select Exit from the first menu in the window, the menu turns gray for a few seconds but the program continues to run. Typing exit in the terminal causes the program to stop running. Jerry |
From: Arjen M. <arj...@de...> - 2012-08-21 12:18:32
|
Hi Jerry, there do not seem to be any specific X11 libraries in the link command. I am not familiar with OS X, so perhaps they are hidden in the framework, but the missing symbols are very basic X11 functions. Regards, Arjen > > With tcl and tk turned on, SVN 12219 fails thus: > > Linking C shared module tkwin.so > cd /usr/local/plplot_build_dir/drivers && /opt/local/bin/cmake -E cmake_link_script CMakeFiles/tkwin.dir/link.txt --verbose=1 > /usr/local/adacore-gnat-2011/bin/gcc -bundle -Wl,-headerpad_max_install_names -o tkwin.so CMakeFiles/tkwin.dir/tkwin.c.o CMakeFiles/tkwin.dir/__/bindings/tk-x-plat/Plplotter_Init.c.o CMakeFiles/tkwin.dir/__/bindings/tk-x-plat/plplotter.c.o ../src/libplplotd.11.0.0.dylib /usr/lib/libm.dylib ../bindings/tcl/libplplottcltkd.9.2.0.dylib -framework tcl -framework tk ../src/libplplotd.11.0.0.dylib > Undefined symbols for architecture x86_64: > "_XOpenDisplay", referenced from: > _plD_open_tkwin in tkwin.c.o > "_XSynchronize", referenced from: > _plD_open_tkwin in tkwin.c.o > "_XFlush", referenced from: > _plD_eop_tkwin in tkwin.c.o > _ExposeCmd in tkwin.c.o > _DisplayPlPlotter in plplotter.c.o > "_XCloseDisplay", referenced from: > _plD_tidy_tkwin in tkwin.c.o > "_XFreePixmap", referenced from: > _ResizeCmd in tkwin.c.o > "_XGetErrorText", referenced from: > _CreatePixmapErrorHandler in tkwin.c.o > ld: symbol(s) not found for architecture x86_64 > collect2: ld returned 1 exit status > make[2]: *** [drivers/tkwin.so] Error 1 > make[1]: *** [drivers/CMakeFiles/tkwin.dir/all] Error 2 > make: *** [all] Error 2 > > Jerry > ------------------------------------------------------------------------------ > Live Security Virtual Conference > Exclusive live event will cover all the ways today's security and > threat landscape has changed and how IT managers can respond. Discussions > will include endpoint security, mobile security and the latest in malware > threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ > _______________________________________________ > Plplot-devel mailing list > Plp...@li... > https://lists.sourceforge.net/lists/listinfo/plplot-devel > DISCLAIMER: This message is intended exclusively for the addressee(s) and may contain confidential and privileged information. If you are not the intended recipient please notify the sender immediately and destroy this message. Unauthorized use, disclosure or copying of this message is strictly prohibited. The foundation 'Stichting Deltares', which has its seat at Delft, The Netherlands, Commercial Registration Number 41146461, is not liable in any way whatsoever for consequences and/or damages resulting from the improper, incomplete and untimely dispatch, receipt and/or content of this e-mail. |
From: Jerry <lan...@qw...> - 2012-08-23 09:22:16
|
On Aug 23, 2012, at 12:08 AM, Arjen Markus wrote: > Hi Jerry, > > On 2012-08-23 08:46, Alan W. Irwin wrote: > >> Hi Jerry: >> Do you have success with any other X application? The reason I ask is >> the above error message may simply mean that X is badly installed on >> your platform. Of course, if X were badly installed on Linux it would >> be catastrophic since X is so important on that platform, but my >> understanding is that X is not very important on Mac OS X. Therefore, >> on that platform you might have a bad X installation and not know >> about it (except by running some classical X applications such as >> xterm, xeyes, oclock, etc.) > > In addition to Alan's suggestions, you could try the following: > > 1. Start Tcl/Tk's wish > 2. Type the command: > pack [button .b -command {puts Hello} -text Hi] > > This should bring up a simple pushbutton with the label Hi and > when you press it, the text Hello is printed in the console window. > (Type "exit" to stop wish) > > If the traditional X programs and this wish example work, then > we can conclude that something is wrong with the way you start > the PLplot examples, though I can not see what is wrong. Unfortunately > I have no OS X machine at my disposal, so I can only make guesses > as to what is going on/wrong. > > Regards, > > Arjen Hi Arjen, This works exactly as you describe except it runs as a native Aqua application, not as an X application. See my more extensive comments to Alan. Jerry |
From: Arjen M. <arj...@de...> - 2012-08-23 10:30:03
|
Hi Jerry, I read your reply to Alan and that indeed makes it more complicated to determine what is going wrong. I am trying to get some help from people who know more about the OS X environment than I do. Regards, Arjen On 2012-08-23 11:22, Jerry wrote: > On Aug 23, 2012, at 12:08 AM, Arjen Markus wrote: > >> Hi Jerry, >> >> On 2012-08-23 08:46, Alan W. Irwin wrote: >> >>> Hi Jerry: >>> Do you have success with any other X application? The reason I ask is >>> the above error message may simply mean that X is badly installed on >>> your platform. Of course, if X were badly installed on Linux it would >>> be catastrophic since X is so important on that platform, but my >>> understanding is that X is not very important on Mac OS X. Therefore, >>> on that platform you might have a bad X installation and not know >>> about it (except by running some classical X applications such as >>> xterm, xeyes, oclock, etc.) >> In addition to Alan's suggestions, you could try the following: >> >> 1. Start Tcl/Tk's wish >> 2. Type the command: >> pack [button .b -command {puts Hello} -text Hi] >> >> This should bring up a simple pushbutton with the label Hi and >> when you press it, the text Hello is printed in the console window. >> (Type "exit" to stop wish) >> >> If the traditional X programs and this wish example work, then >> we can conclude that something is wrong with the way you start >> the PLplot examples, though I can not see what is wrong. Unfortunately >> I have no OS X machine at my disposal, so I can only make guesses >> as to what is going on/wrong. >> >> Regards, >> >> Arjen > > Hi Arjen, > > This works exactly as you describe except it runs as a native Aqua application, not as an X application. See my more extensive comments to Alan. > > Jerry > ------------------------------------------------------------------------------ > Live Security Virtual Conference > Exclusive live event will cover all the ways today's security and > threat landscape has changed and how IT managers can respond. Discussions > will include endpoint security, mobile security and the latest in malware > threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ > _______________________________________________ > Plplot-devel mailing list > Plp...@li... > https://lists.sourceforge.net/lists/listinfo/plplot-devel > DISCLAIMER: This message is intended exclusively for the addressee(s) and may contain confidential and privileged information. If you are not the intended recipient please notify the sender immediately and destroy this message. Unauthorized use, disclosure or copying of this message is strictly prohibited. The foundation 'Stichting Deltares', which has its seat at Delft, The Netherlands, Commercial Registration Number 41146461, is not liable in any way whatsoever for consequences and/or damages resulting from the improper, incomplete and untimely dispatch, receipt and/or content of this e-mail. |
From: Alan W. I. <ir...@be...> - 2012-08-23 21:02:30
|
To Jerry and Arjen: On 2012-08-23 02:22-0700 Jerry wrote: > Hi Arjen, > > This [the simple wish test above] works exactly as you describe except it runs as a native Aqua application, not as an X application. See my more extensive comments to Alan. @Jerry: Just out of curiosity does Arjen's test also work with plserver? That works fine here with me, e.g., software@raven> plserver % pack [button .b -command {puts Hello} -text Hi] If that works for you, is plserver a native app (depending on aqua rather than X)? You seemed to imply that in previous e-mails, but please confirm. If it is not an X application, then I am virtually positive that violates one of the PLplot Tk assumptions which is that plserver sets up a full X window for PLplot to draw on. That would explain why you cannot get plserver (or wish) to run any PLplot plotting commands while non-PLplot commands seem to work fine. If Arjen can get the tkwin shared object to work under wish (see below) and I confirm that fix on Linux, that is one PLplot Tk alternative that will probably work for you on Mac OS X as well. @Arjen: This seems like a very similar problem to what you encounter on Windows when you try and get the Tk part of PLplot to work. Furthermore, Vince Darley dealt with the issue of cross-platform portable Tk long ago with the tkwin dll (shared object) whose code can be found at drivers/tkwin.c and bindings/tk-x-platform. Here is the relevant comment from tkwin.c // // We want to use the 'pure Tk' interface. On Unix we can use // some direct calls to X instead of Tk, if we want, although // that code hasn't been tested for some time. So this define // is required on Windows/MacOS and perhaps optional on Unix. // #define USE_TK #ifdef __WIN32__ #define XSynchronize( display, bool ) { display->request++; } #define XSync( display, bool ) { display->request++; } #define XFlush( display ) #endif The above comment implies that tkwin should not have any fundamental showstoppers on Windows, Mac OS X, (and Linux). However, it has been many years since anybody actually tested this code, and it turns out some bit rot has set in. As of revision 12226 I have removed some of that bit-rot but not all of it. If I follow the (newly updated) directions at the end of examples/tk/README.tkdemos to run runAllDemos.tcl under wish for either the build tree or installed examples tree I get pretty far. Here is the latest result (from the build tree in this case). # To get all build-tree dependencies in place when -DBUILD_TEST=ON (Ignore the fact that the final command will not work on Windows.) make test_tk_standard_examples # To build dev tkwin make tkwin cd examples/tk software@raven> wish % lappend auto_path ../../bindings/tk-x-plat ../../bindings/tk /usr/share/tcltk/tcl8.5 /usr/lib /usr/local/lib/tcltk /usr/local/share/tcltk /usr/lib/tcltk /usr/share/tcltk /usr/share/tcltk/tk8.5 /usr/share/tcltk/tk8.5/ttk ../../bindings/tk-x-plat ../../bindings/tk % package require Plplotter attempt to provide package Plplotter 5 failed: package Plplotter 5.9.9 provided instead % source runAllDemos.tcl *** PLPLOT WARNING *** plgdevlst: too many devices I also got the same result for the alternative case (installed examples tree). So wish found and dynloaded Plplotter (which corresponds to the tkwin shared object), but it appears from the last WARNING message (which froze the GUI although the command-line still worked within wish) that there is still some bit rot somewhere in the tkwin shared object code (e.g., drivers/tkwin.c and bindings/tk-x-plat/*.c). Arjen, if you want to look further at this, you will see that bindings/tk-x-plat/pkgIndex.tcl.in has separate Unix and Windows logic, and I am virtually positive the Windows part of this will need some updating. But you should be able to figure out what to do from the Unix logic there and should be able to get as far as I did above on Windows in fairly short order. After that, I think all that should be required is minor updates to the tkwin shared object code. The reason I make the claim is this method was designed from the start (by Vince who worked exclusively on Windows) to work on Windows. Vince also made it work on my Linux platform just from making changes dealing with the error messages that I gave him for that platform at that time (something like ~7 years ago!). Although that good Linux result for the tkwin shared object was demonstrated only at a rather long time ago, I don't think we have changed PLplot fundamentals too much since then so I don't think the bit rot in the tkwin shared object code would be too difficult to fix if you are interested. Alan __________________________ Alan W. Irwin Astronomical research affiliation with Department of Physics and Astronomy, University of Victoria (astrowww.phys.uvic.ca). Programming affiliations with the FreeEOS equation-of-state implementation for stellar interiors (freeeos.sf.net); the Time Ephemerides project (timeephem.sf.net); PLplot scientific plotting software package (plplot.sf.net); the libLASi project (unifont.org/lasi); the Loads of Linux Links project (loll.sf.net); and the Linux Brochure Project (lbproject.sf.net). __________________________ Linux-powered Science __________________________ |
From: Jerry <lan...@qw...> - 2012-08-24 03:56:00
|
On Aug 23, 2012, at 2:02 PM, Alan W. Irwin wrote: > To Jerry and Arjen: > > On 2012-08-23 02:22-0700 Jerry wrote: > >> Hi Arjen, >> >> This [the simple wish test above] works exactly as you describe except it runs as a native Aqua application, not as an X application. See my more extensive comments to Alan. > > @Jerry: > > Just out of curiosity does Arjen's test also work with plserver? That works > fine here with me, e.g., > > software@raven> plserver > % pack [button .b -command {puts Hello} -text Hi] Yes. > > If that works for you, is plserver a native app (depending on aqua > rather than X)? Yes. It appears identical to Wish when launched from the command line, except the program's name that is displayed in the (main) menu bar is plserver rather than Wish. When running x01c and selecting Tcl/TK Window for output, a program called plserver appears and is similar to the plserver when launched from command line, but with extra in-window menus as described earlier. In this case, a _second_ Wish-like program is launched called x01c. (Both programs have a blue feather icon in my dock which I gather is a Tcl/Tk logo.) The appearance of x01c in the dock (sans feather) is also what happens when a program is run using qtwidget so that's not that odd in itself. In this cases the x01c program looks like a Wish program with the default Aqua menus but when I select e.g. Run Widget Demo nothing happens except all of the menu bar items File, Edit, Window, Help (all default items with an Aqua program) disappear, leaving only the x01c menu and its standard items (About, Hide, Hide others, Services, Quit) which are also standard "default" items for an Aqua program. (This will make more sense if you've seen a Mac screen.) I'd like to add this behavior and hope that it doesn't confuse things (more): When I build plplot for tcl/tk (still 12221), the X server always launches. I believe I saw, very briefly (1/10 second) a spurious window appear which might be due to X. This _might_ be the mysterious window that I described earlier when following the Tk readme that seems to have the words "One" ... "Four" across the top. Also as part of the build output (as I have mentioned before), this appears, possibly at the time the vanishing X windows flash on-off: Scanning dependencies of target test_tk_01 make -f examples/CMakeFiles/test_tk_01.dir/build.make examples/CMakeFiles/test_tk_01.dir/build cd /usr/local/plplot_build_dir/examples && tk/xtk01 -f /usr/local/plplot_build_dir/examples/tk/tk01 X Error of failed request: BadWindow (invalid Window parameter) Major opcode of failed request: 2 (X_ChangeWindowAttributes) Resource id in failed request: 0x6c275890 Serial number of failed request: 30 Current serial number in output stream: 33 make[3]: *** [examples/CMakeFiles/test_tk_01] Error 1 make[2]: *** [examples/CMakeFiles/test_tk_01.dir/all] Error 2 make[1]: *** [examples/CMakeFiles/test_tk_01.dir/rule] Error 2 make: *** [test_tk_01] Error 2 make: *** No rule to make target `test_tk_02'. Stop. and a little later, Scanning dependencies of target test_tk_03 make -f examples/CMakeFiles/test_tk_03.dir/build.make examples/CMakeFiles/test_tk_03.dir/build cd /usr/local/plplot_build_dir/examples && tk/tk03 X Error of failed request: BadWindow (invalid Window parameter) Major opcode of failed request: 2 (X_ChangeWindowAttributes) Resource id in failed request: 0xa98df290 Serial number of failed request: 30 Current serial number in output stream: 33 make[3]: *** [examples/CMakeFiles/test_tk_03] Error 1 make[2]: *** [examples/CMakeFiles/test_tk_03.dir/all] Error 2 make[1]: *** [examples/CMakeFiles/test_tk_03.dir/rule] Error 2 make: *** [test_tk_03] Error 2 make: *** No rule to make target `test_tk_04'. Stop. Also, recall that when running x01c and selecting for output New tk driver this error appears: *** PLPLOT ERROR, IMMEDIATE EXIT *** No tk plframe widget to connect to Program aborted Jerry |
From: Arjen M. <arj...@de...> - 2012-08-27 18:59:22
|
Hi Alan, Jerry, I have not looked at drivers/tkwin.c and bindings/tk-x-platform\ yet, but what I normally do on Windows to test the Tcl/Tk bindings is this: - Set the path to include the PLplot DLLs - Start ../../utils/pltcl.exe - source x01 etc. - not x01.tcl as x01 contains the initialisation commands. The advantage of this is that you start a customised tclsh, rather than wish, so that the graphical stuff all comes from the PLplot extension. Jerry, is there a pltcl executable available on OS X? If so, what is the result? Regards, Arjen On Thu, 23 Aug 2012 14:02:21 -0700 (PDT) "Alan W. Irwin" <ir...@be...> wrote: > To Jerry and Arjen: > ... > > @Arjen: > > This seems like a very similar problem to what you >encounter on > Windows when you try and get the Tk part of PLplot to >work. ... DISCLAIMER: This message is intended exclusively for the addressee(s) and may contain confidential and privileged information. If you are not the intended recipient please notify the sender immediately and destroy this message. Unauthorized use, disclosure or copying of this message is strictly prohibited. The foundation 'Stichting Deltares', which has its seat at Delft, The Netherlands, Commercial Registration Number 41146461, is not liable in any way whatsoever for consequences and/or damages resulting from the improper, incomplete and untimely dispatch, receipt and/or content of this e-mail. |
From: Jerry <lan...@qw...> - 2012-08-28 02:40:46
Attachments:
tcl.ps
|
On Aug 27, 2012, at 11:59 AM, Arjen Markus wrote: > Hi Alan, Jerry, > > I have not looked at drivers/tkwin.c and bindings/tk-x-platform\ yet, but what I normally do on Windows to > test the Tcl/Tk bindings is this: > - Set the path to include the PLplot DLLs > - Start ../../utils/pltcl.exe > - source x01 etc. - not x01.tcl as x01 contains the > initialisation commands. > > The advantage of this is that you start a customised tclsh, > rather than wish, so that the graphical stuff all comes > from the PLplot extension. > > Jerry, is there a pltcl executable available on OS X? > If so, what is the result? > > Regards, > > Arjen > Hi Arjen, I have two pltcl: /usr/local/plplot_build_dir/utils/pltcl and /usr/local/plplot/bin/pltcl, both the same size at 22,004 bytes. MBPro:~ jb$ cd /usr/local/plplot_build_dir/examples/tcl MBPro:tcl jb$ export PATH=/usr/local/plplot/lib:$PATH MBPro:tcl jb$ /usr/local/plplot/bin/pltcl pltcl> source x01 PLplot library version: 5.9.9 Plotting Options: < 1> xwin X-Window (Xlib) < 2> tk Tcl/TK Window < 3> ps PostScript File (monochrome) < 4> psc PostScript File (color) < 5> xfig Fig file < 6> null Null device < 7> tkwin New tk driver < 8> mem User-supplied memory device < 9> svg Scalable Vector Graphics (SVG 1.1) <10> bmpqt Qt Windows bitmap driver <11> jpgqt Qt jpg driver <12> pngqt Qt png driver <13> ppmqt Qt ppm driver <14> tiffqt Qt tiff driver <15> svgqt Qt SVG driver <16> qtwidget Qt Widget <17> epsqt Qt EPS driver <18> pdfqt Qt PDF driver <19> extqt External Qt driver <20> memqt Memory Qt driver <21> xcairo Cairo X Windows Driver <22> pdfcairo Cairo PDF Driver <23> pscairo Cairo PS Driver <24> svgcairo Cairo SVG Driver <25> pngcairo Cairo PNG Driver <26> memcairo Cairo Memory Driver <27> extcairo Cairo External Context Driver Enter device number or keyword: 16 <<<< Right after I hit Enter here, what I believe might be the Qtwidget window appears as an empty black window (with a title bar) for about 1/10 second before it disappears.>>>> QColor::setRgb: RGB parameters out of range *** PLPLOT ERROR, IMMEDIATE EXIT *** plP_setphy: device minima must not exceed maxima Program aborted MBPro:tcl jb$ If I select 4 (psc), a PS file is created of size 21,483 bytes but my PDF viewer refuses to open it, reporting a non-specific PostScript error. If I run x01c and output to PS, the file is 47,429 and opens OK (except that it is rotated 90 degrees but that's another issue). Doing a file comparison of the PS files, the Tcl file's first three lines look like this: %!PS-Adobe-2.0 EPSF-2.0 %%BoundingBox: -429496697 -429496697 5090 -4484 %%% whereas the first three lines of the C-generated PS look like this: %!PS-Adobe-2.0 EPSF-2.0 %%BoundingBox: 44 44 580 738 %%%%%%%%%%%%%%%%%%%%%% The Tcl file contains 344 nan's of which 64 are lines like this: /Helvetica nan SF and 62 * 4 nan's are in lines like this: /Helvetica [nan nan nan nan 0 0] SF That file does end in %%EOF which I think is a valid eof marker for PS. The C-generated PS contains zero nan's. I've attached the Tcl PS file but I don't know if the list server will allow it, so I'll cc you and Alan. When I select <2> or <7> from the device list after starting x01, the results are the same as when running x01c which I have reported earlier. Jerry |
From: Arjen M. <arj...@de...> - 2012-08-28 07:04:48
|
Hi Jerry, I got the PostScript file alright. GhostScript definitely doesn't like it - because of the bounding box and the nans. Since the PostScript device is the simplest one we have, completely independent of anything else, we are dealing with a different problem. It may very well be that the X11 error messages are a consequence of the real problem that may now have surfaced in a different guise. For the sake of mental sanity, I suggest we first solve this PostScript problem, though I have no strategy for that ready at the moment. Regards, Arjen On 2012-08-28 04:40, Jerry wrote: > On Aug 27, 2012, at 11:59 AM, Arjen Markus wrote: > >> Hi Alan, Jerry, >> >> I have not looked at drivers/tkwin.c and bindings/tk-x-platform\ yet, but what I normally do on Windows to >> test the Tcl/Tk bindings is this: >> - Set the path to include the PLplot DLLs >> - Start ../../utils/pltcl.exe >> - source x01 etc. - not x01.tcl as x01 contains the >> initialisation commands. >> >> The advantage of this is that you start a customised tclsh, >> rather than wish, so that the graphical stuff all comes >> from the PLplot extension. >> >> Jerry, is there a pltcl executable available on OS X? >> If so, what is the result? >> >> Regards, >> >> Arjen >> > Hi Arjen, > > I have two pltcl: /usr/local/plplot_build_dir/utils/pltcl and /usr/local/plplot/bin/pltcl, both the same size at 22,004 bytes. > > MBPro:~ jb$ cd /usr/local/plplot_build_dir/examples/tcl > MBPro:tcl jb$ export PATH=/usr/local/plplot/lib:$PATH > MBPro:tcl jb$ /usr/local/plplot/bin/pltcl > pltcl> source x01 > PLplot library version: 5.9.9 > > Plotting Options: > < 1> xwin X-Window (Xlib) > < 2> tk Tcl/TK Window > < 3> ps PostScript File (monochrome) > < 4> psc PostScript File (color) > < 5> xfig Fig file > < 6> null Null device > < 7> tkwin New tk driver > < 8> mem User-supplied memory device > < 9> svg Scalable Vector Graphics (SVG 1.1) > <10> bmpqt Qt Windows bitmap driver > <11> jpgqt Qt jpg driver > <12> pngqt Qt png driver > <13> ppmqt Qt ppm driver > <14> tiffqt Qt tiff driver > <15> svgqt Qt SVG driver > <16> qtwidget Qt Widget > <17> epsqt Qt EPS driver > <18> pdfqt Qt PDF driver > <19> extqt External Qt driver > <20> memqt Memory Qt driver > <21> xcairo Cairo X Windows Driver > <22> pdfcairo Cairo PDF Driver > <23> pscairo Cairo PS Driver > <24> svgcairo Cairo SVG Driver > <25> pngcairo Cairo PNG Driver > <26> memcairo Cairo Memory Driver > <27> extcairo Cairo External Context Driver > > Enter device number or keyword: 16 > <<<< Right after I hit Enter here, what I believe might be the Qtwidget window appears as an empty black window (with a title bar) for about 1/10 second before it disappears.>>>> > QColor::setRgb: RGB parameters out of range > > *** PLPLOT ERROR, IMMEDIATE EXIT *** > plP_setphy: device minima must not exceed maxima > Program aborted > MBPro:tcl jb$ > > If I select 4 (psc), a PS file is created of size 21,483 bytes but my PDF viewer refuses to open it, reporting a non-specific PostScript error. If I run x01c and output to PS, the file is 47,429 and opens OK (except that it is rotated 90 degrees but that's another issue). Doing a file comparison of the PS files, the Tcl file's first three lines look like this: > > %!PS-Adobe-2.0 EPSF-2.0 > %%BoundingBox: -429496697 -429496697 5090 -4484 > %%% > > whereas the first three lines of the C-generated PS look like this: > > %!PS-Adobe-2.0 EPSF-2.0 > %%BoundingBox: 44 44 580 738 > %%%%%%%%%%%%%%%%%%%%%% > > The Tcl file contains 344 nan's of which 64 are lines like this: > > /Helvetica nan SF > > and 62 * 4 nan's are in lines like this: > > /Helvetica [nan nan nan nan 0 0] SF > > That file does end in %%EOF which I think is a valid eof marker for PS. > > The C-generated PS contains zero nan's. > > I've attached the Tcl PS file but I don't know if the list server will allow it, so I'll cc you and Alan. > > When I select <2> or <7> from the device list after starting x01, the results are the same as when running x01c which I have reported earlier. > > Jerry > > > > ------------------------------------------------------------------------ > > > > >> On Thu, 23 Aug 2012 14:02:21 -0700 (PDT) >> "Alan W. Irwin" <ir...@be...> wrote: >>> To Jerry and Arjen: >> ... >>> @Arjen: >>> This seems like a very similar problem to what you encounter on >>> Windows when you try and get the Tk part of PLplot to work. >> ... >> >> >> DISCLAIMER: This message is intended exclusively for the addressee(s) and may contain confidential and privileged information. If you are not the intended recipient please notify the sender immediately and destroy this message. Unauthorized use, disclosure or copying of this message is strictly prohibited. >> The foundation 'Stichting Deltares', which has its seat at Delft, The Netherlands, Commercial Registration Number 41146461, is not liable in any way whatsoever for consequences and/or damages resulting from the improper, incomplete and untimely dispatch, receipt and/or content of this e-mail. >> >> >> >> > DISCLAIMER: This message is intended exclusively for the addressee(s) and may contain confidential and privileged information. If you are not the intended recipient please notify the sender immediately and destroy this message. Unauthorized use, disclosure or copying of this message is strictly prohibited. The foundation 'Stichting Deltares', which has its seat at Delft, The Netherlands, Commercial Registration Number 41146461, is not liable in any way whatsoever for consequences and/or damages resulting from the improper, incomplete and untimely dispatch, receipt and/or content of this e-mail. |
From: Jerry <lan...@qw...> - 2012-08-28 08:59:52
|
I had to look this up--BoundingBox is LowerLeftX, LowerLeftY, UpperRightX, UpperRightY, with the origin at the lower left of the page. When I run x02 I get %%BoundingBox: -429496697 -429496697 -429496696 -429496696 which is only 1 square (typesetter's) point on a side. That file has 696 nan's. The svg device makes a svg file which opens in a browser but displays only a black rectangle which looks like it could be the right size for the background. My graphics editor that normally likes svg's won't open it. It has 80 nan's but no obviously wacky numbers in the first few lines--stuff like this: width="720pt" height="540pt" viewBox="0 0 720 540" but by the middle of the first screen things seem to get odd: <g transform="matrix(1.000000 0.000000 0.000000 -1.000000 -47187360.043947 -47187360.043947)" > <g transform="matrix(1.0 0.0 0.0 1.0 0.0 nan)" > <text dominant-baseline="no-change" fill="#FF0000" fill-opacity="1.000000" xml:space="preserve" font-size="-2147483648" text-anchor="middle" x="-0.000000" y="0" The svgqt drive makes a file with 84 nans. When I tried pdfcairo I got 140 of these including an identical -2147483648 for each copy, which I can't help but notice is -2^31 which looks a lot like an integer to me and is also a lot of 1's in two's complement binary if memory serves: (process:44748): Pango-WARNING **: pango_layout_set_markup_with_accel: Value of 'size' attribute on <span> tag on line 1 could not be parsed; should be an integer, or a string such as 'small', not '-2147483648' Jerry On Aug 28, 2012, at 12:04 AM, Arjen Markus wrote: > Hi Jerry, > > I got the PostScript file alright. GhostScript definitely doesn't like it - because of the bounding box and the nans. Since the PostScript > device is the simplest one we have, completely independent of anything > else, we are dealing with a different problem. It may very well be > that the X11 error messages are a consequence of the real problem that > may now have surfaced in a different guise. > > For the sake of mental sanity, I suggest we first solve this PostScript > problem, though I have no strategy for that ready at the moment. > > Regards, > > Arjen > > > On 2012-08-28 04:40, Jerry wrote: >> On Aug 27, 2012, at 11:59 AM, Arjen Markus wrote: >>> Hi Alan, Jerry, >>> >>> I have not looked at drivers/tkwin.c and bindings/tk-x-platform\ yet, but what I normally do on Windows to >>> test the Tcl/Tk bindings is this: >>> - Set the path to include the PLplot DLLs >>> - Start ../../utils/pltcl.exe >>> - source x01 etc. - not x01.tcl as x01 contains the >>> initialisation commands. >>> >>> The advantage of this is that you start a customised tclsh, >>> rather than wish, so that the graphical stuff all comes >>> from the PLplot extension. >>> >>> Jerry, is there a pltcl executable available on OS X? >>> If so, what is the result? >>> >>> Regards, >>> >>> Arjen >>> >> Hi Arjen, >> I have two pltcl: /usr/local/plplot_build_dir/utils/pltcl and /usr/local/plplot/bin/pltcl, both the same size at 22,004 bytes. >> MBPro:~ jb$ cd /usr/local/plplot_build_dir/examples/tcl MBPro:tcl jb$ export PATH=/usr/local/plplot/lib:$PATH >> MBPro:tcl jb$ /usr/local/plplot/bin/pltcl >> pltcl> source x01 >> PLplot library version: 5.9.9 >> Plotting Options: >> < 1> xwin X-Window (Xlib) >> < 2> tk Tcl/TK Window >> < 3> ps PostScript File (monochrome) >> < 4> psc PostScript File (color) >> < 5> xfig Fig file >> < 6> null Null device >> < 7> tkwin New tk driver >> < 8> mem User-supplied memory device >> < 9> svg Scalable Vector Graphics (SVG 1.1) >> <10> bmpqt Qt Windows bitmap driver >> <11> jpgqt Qt jpg driver >> <12> pngqt Qt png driver >> <13> ppmqt Qt ppm driver >> <14> tiffqt Qt tiff driver >> <15> svgqt Qt SVG driver >> <16> qtwidget Qt Widget >> <17> epsqt Qt EPS driver >> <18> pdfqt Qt PDF driver >> <19> extqt External Qt driver >> <20> memqt Memory Qt driver >> <21> xcairo Cairo X Windows Driver >> <22> pdfcairo Cairo PDF Driver >> <23> pscairo Cairo PS Driver >> <24> svgcairo Cairo SVG Driver >> <25> pngcairo Cairo PNG Driver >> <26> memcairo Cairo Memory Driver >> <27> extcairo Cairo External Context Driver >> Enter device number or keyword: 16 >> <<<< Right after I hit Enter here, what I believe might be the Qtwidget window appears as an empty black window (with a title bar) for about 1/10 second before it disappears.>>>> >> QColor::setRgb: RGB parameters out of range >> *** PLPLOT ERROR, IMMEDIATE EXIT *** >> plP_setphy: device minima must not exceed maxima >> Program aborted >> MBPro:tcl jb$ >> If I select 4 (psc), a PS file is created of size 21,483 bytes but my PDF viewer refuses to open it, reporting a non-specific PostScript error. If I run x01c and output to PS, the file is 47,429 and opens OK (except that it is rotated 90 degrees but that's another issue). Doing a file comparison of the PS files, the Tcl file's first three lines look like this: >> %!PS-Adobe-2.0 EPSF-2.0 >> %%BoundingBox: -429496697 -429496697 5090 -4484 >> %%% >> whereas the first three lines of the C-generated PS look like this: >> %!PS-Adobe-2.0 EPSF-2.0 >> %%BoundingBox: 44 44 580 738 >> %%%%%%%%%%%%%%%%%%%%%% >> The Tcl file contains 344 nan's of which 64 are lines like this: >> /Helvetica nan SF >> and 62 * 4 nan's are in lines like this: >> /Helvetica [nan nan nan nan 0 0] SF >> That file does end in %%EOF which I think is a valid eof marker for PS. >> The C-generated PS contains zero nan's. >> I've attached the Tcl PS file but I don't know if the list server will allow it, so I'll cc you and Alan. >> When I select <2> or <7> from the device list after starting x01, the results are the same as when running x01c which I have reported earlier. >> Jerry >> ------------------------------------------------------------------------ >>> On Thu, 23 Aug 2012 14:02:21 -0700 (PDT) >>> "Alan W. Irwin" <ir...@be...> wrote: >>>> To Jerry and Arjen: >>> ... >>>> @Arjen: >>>> This seems like a very similar problem to what you encounter on >>>> Windows when you try and get the Tk part of PLplot to work. >>> ... >>> >>> >>> DISCLAIMER: This message is intended exclusively for the addressee(s) and may contain confidential and privileged information. If you are not the intended recipient please notify the sender immediately and destroy this message. Unauthorized use, disclosure or copying of this message is strictly prohibited. >>> The foundation 'Stichting Deltares', which has its seat at Delft, The Netherlands, Commercial Registration Number 41146461, is not liable in any way whatsoever for consequences and/or damages resulting from the improper, incomplete and untimely dispatch, receipt and/or content of this e-mail. >>> >>> >>> >>> > > > DISCLAIMER: This message is intended exclusively for the addressee(s) and may contain confidential and privileged information. If you are not the intended recipient please notify the sender immediately and destroy this message. Unauthorized use, disclosure or copying of this message is strictly prohibited. > The foundation 'Stichting Deltares', which has its seat at Delft, The Netherlands, Commercial Registration Number 41146461, is not liable in any way whatsoever for consequences and/or damages resulting from the improper, incomplete and untimely dispatch, receipt and/or content of this e-mail. > > > > |
From: Alan W. I. <ir...@be...> - 2012-08-28 15:53:31
|
To Arjen and Jerry: Jerry was not running pltcl correctly. See examples/tcl/README.tcldemos for how to do that (plinit first). Those directions are followed in the configured file plplot_test/test_tcl.sh(.in) which in turn is run by the configured file plplot_test/plplot-test.sh(.in). The CMake logic in examples/CMakeLists.txt that uses plplot_test/plplot-test.sh, is somewhat complicated since there are many languages (and associated targets) which need to be set up in a loop to test those languages with -dev psc), but the result is the test_tcl_psc target runs plplot_test/plplot-test.sh for the tcl language and psc device which in turn runs test_tcl.sh. In the past, both of you have reported good results for tcl using the test_diff_psc target (which in turn depends on the test_tcl_psc target). So if the test_tcl_psc target still works for you, then you have proved that Tcl and pltcl continues to be set up correctly on your systems. Those directions in examples/tcl/README.tcldemos are also followed in the configured version of examples/tcl/standard_examples.in in the build tree, which in turn is run by the test_tcl_standard_examples target that is available if you use the -DBUILD_TEST=ON option. To see what is actually run by that target look in examples/CMakeLists.txt where you will find the line COMMAND ${CMAKE_CURRENT_BINARY_DIR}/tcl/standard_examples -dev xwin -np where, of course, ${CMAKE_CURRENT_BINARY_DIR} refers to the examples subdirectory of the build tree and the -np option stands for "no pause" (so you don't have to keep hammering the return key to get through the examples). @Jerry: I think that test_tcl_standard_examples target should just work for you if -dev xwin works and if you have Tcl set up properly on your system. @Arjen: that target depends on -dev xwin which is not available on your Windows system. But I believe in the past you have gotten examples/tcl/standard_examples in the the build tree to work by hand for the interactive devices that are available to you on Windows. If you confirm that again, and assuming the interactive device you use is wingcc then I suggest you add another stanza to the examples/CMakeLists.txt file like this: if(ENABLE_tcl AND PLD_xwin) .... current logic .... elseif(ENABLE_tcl AND PLD_wingcc) .... almost exact copy of current logic with xwin replaced by wingcc .... endif(ENABLE_tcl AND PLD_xwin) Then you should also be able to run the test_tcl_standard_examples target without issues if Tcl and -dev wingcc are set up properly on your system. @both of you: of course the test_tcl_psc target and the test_tcl_standard_examples target only test Tcl and do not test Tk. I think the only chance for you to test Tk for your non-X versions of Tk will involve the tkwin shared object. However, some C source code updating will be required to get that shared object to work with modern PLplot as discussed previously in this thread. Alan __________________________ Alan W. Irwin Astronomical research affiliation with Department of Physics and Astronomy, University of Victoria (astrowww.phys.uvic.ca). Programming affiliations with the FreeEOS equation-of-state implementation for stellar interiors (freeeos.sf.net); the Time Ephemerides project (timeephem.sf.net); PLplot scientific plotting software package (plplot.sf.net); the libLASi project (unifont.org/lasi); the Loads of Linux Links project (loll.sf.net); and the Linux Brochure Project (lbproject.sf.net). __________________________ Linux-powered Science __________________________ |
From: Arjen M. <arj...@de...> - 2012-08-29 08:34:26
|
Hi Alan, On Tue, 28 Aug 2012 08:53:20 -0700 (PDT) "Alan W. Irwin" <ir...@be...> wrote: > To Arjen and Jerry: > > Jerry was not running pltcl correctly. See > examples/tcl/README.tcldemos for how to do that (plinit >first). Those > directions are followed in the configured file > plplot_test/test_tcl.sh(.in) which in turn is run by the >configured > file plplot_test/plplot-test.sh(.in). Are you sure? jerry wrote he sources "x01", which contains: source x01.tcl ;# Just definitions plgver ver puts "..." ;# Just a check plinit ;# The required initialisation x01 ;# Plot the actual graphs plend ;# Nicely finish it all This is exactly the way I do it on Windows. The tcldemos.tcl file will allow you to run all examples in one fell swoop, but the individual x?? and x??.tcl files will allow you to concentrate on a single one. I will look into the CMake logic as per your remarks. Regards, Arjen DISCLAIMER: This message is intended exclusively for the addressee(s) and may contain confidential and privileged information. If you are not the intended recipient please notify the sender immediately and destroy this message. Unauthorized use, disclosure or copying of this message is strictly prohibited. The foundation 'Stichting Deltares', which has its seat at Delft, The Netherlands, Commercial Registration Number 41146461, is not liable in any way whatsoever for consequences and/or damages resulting from the improper, incomplete and untimely dispatch, receipt and/or content of this e-mail. |
From: Jerry <lan...@qw...> - 2012-08-29 09:30:31
|
On Aug 28, 2012, at 8:53 AM, Alan W. Irwin wrote: > To Arjen and Jerry: > > Jerry was not running pltcl correctly. See > examples/tcl/README.tcldemos for how to do that (plinit first). Indeed, in the commands that I posted in a recent e-mail I did not run plinit, as the README.tcldemos says to do. However, the x?? files each contain plinit so it would seem to not be required to otherwise run it. [This ^ is just repeating Arjen's new post.] Also, this is what I take away from the readme: "To run individual examples, run the x?? script corresponding to the x??.tcl example, where ?? is 01 through 19.? In any case, here is what happens when I add that command: MBPro:~ jerrybauck$ cd /usr/local/plplot_build_dir/examples/tcl MBPro:tcl jerrybauck$ export PATH=/usr/local/plplot/lib:$PATH MBPro:tcl jerrybauck$ /usr/local/plplot/bin/pltcl pltcl> plinit Plotting Options: < 1> xwin X-Window (Xlib) < 2> tk Tcl/TK Window < 3> ps PostScript File (monochrome) < 4> psc PostScript File (color) < 5> xfig Fig file < 6> null Null device < 7> tkwin New tk driver < 8> mem User-supplied memory device < 9> svg Scalable Vector Graphics (SVG 1.1) <10> bmpqt Qt Windows bitmap driver <11> jpgqt Qt jpg driver <12> pngqt Qt png driver <13> ppmqt Qt ppm driver <14> tiffqt Qt tiff driver <15> svgqt Qt SVG driver <16> qtwidget Qt Widget <17> epsqt Qt EPS driver <18> pdfqt Qt PDF driver <19> extqt External Qt driver <20> memqt Memory Qt driver Enter device number or keyword: 4 Enter graphics output file name: /testpltcl.ps <<<< At this point a ps file is made which contains only a tiny black square, perhaps 3 x 3 pixels at 100% zoom. >>> pltcl> source x01 PLplot library version: 5.9.9 Plotting Options: < 1> xwin X-Window (Xlib) < 2> tk Tcl/TK Window < 3> ps PostScript File (monochrome) < 4> psc PostScript File (color) < 5> xfig Fig file < 6> null Null device < 7> tkwin New tk driver < 8> mem User-supplied memory device < 9> svg Scalable Vector Graphics (SVG 1.1) <10> bmpqt Qt Windows bitmap driver <11> jpgqt Qt jpg driver <12> pngqt Qt png driver <13> ppmqt Qt ppm driver <14> tiffqt Qt tiff driver <15> svgqt Qt SVG driver <16> qtwidget Qt Widget <17> epsqt Qt EPS driver <18> pdfqt Qt PDF driver <19> extqt External Qt driver <20> memqt Memory Qt driver Enter device number or keyword: 4 Enter graphics output file name: /testx01.ps <<< At this point a ps file is made which contains 344 NANs. >>> pltcl> When I execute x01 directly and choose xwin, an X window appears which is all black and persists until I hit Return. If I choose qtwidget, a black 1/10 second window flashes that looks like it _could_ be the Qt widget. At the same time, in my dock (which shows icons for running programs), an icon labelled "pltcl" appears briefly. Also, this text appears: *** PLPLOT ERROR, IMMEDIATE EXIT *** plP_setphy: device minima must not exceed maxima Program aborted Sorry if I'm repeating myself but I just want to make sure I'm being accurate. > Those > directions are followed in the configured file > plplot_test/test_tcl.sh(.in) which in turn is run by the configured > file plplot_test/plplot-test.sh(.in). The CMake logic in > examples/CMakeLists.txt that uses plplot_test/plplot-test.sh, is > somewhat complicated since there are many languages (and associated > targets) which need to be set up in a loop to test those languages > with -dev psc), but the result is the test_tcl_psc target runs > plplot_test/plplot-test.sh for the tcl language and psc device which > in turn runs test_tcl.sh. > > In the past, both of you have reported good results for tcl using the > test_diff_psc target (which in turn depends on the test_tcl_psc > target). So if the test_tcl_psc target still works for you, then you > have proved that Tcl and pltcl continues to be set up correctly on > your systems. I ran a fuller test than I normally do (test_noninteractive in this case), just to make sure that this is still true. At one point this appears in the output: 14: tcl 14: Missing examples : 14: Differing postscript output : 14: Missing stdout : 14: Differing stdout : which I think confirms that the Tcl stuff is still working. > > Those directions in examples/tcl/README.tcldemos are also followed in > the configured version of examples/tcl/standard_examples.in in the > build tree, which in turn is run by the test_tcl_standard_examples > target that is available if you use the -DBUILD_TEST=ON option. To > see what is actually run by that target look in > examples/CMakeLists.txt where you will find the line > > COMMAND ${CMAKE_CURRENT_BINARY_DIR}/tcl/standard_examples -dev xwin -np > > where, of course, ${CMAKE_CURRENT_BINARY_DIR} refers to the examples > subdirectory of the build tree and the -np option stands for "no pause" > (so you don't have to keep hammering the return key to get through the > examples). > > @Jerry: I think that test_tcl_standard_examples target should just > work for you if -dev xwin works and if you have Tcl set up properly on > your system. Not sure what this means. Is test_tcl_standard_examples a subset of test_noninteractive? > > > @Arjen: that target depends on -dev xwin which is not available on > your Windows system. But I believe in the past you have gotten > examples/tcl/standard_examples in the the build tree to work by hand > for the interactive devices that are available to you on Windows. If > you confirm that again, and assuming the interactive device you use is wingcc then > I suggest you add another stanza to the examples/CMakeLists.txt file > like this: > > if(ENABLE_tcl AND PLD_xwin) > .... current logic .... > elseif(ENABLE_tcl AND PLD_wingcc) > .... almost exact copy of current logic with xwin replaced > by wingcc .... > endif(ENABLE_tcl AND PLD_xwin) > > Then you should also be able to run the test_tcl_standard_examples > target without issues if Tcl and -dev wingcc are set up properly on > your system. > > @both of you: of course the test_tcl_psc target and the > test_tcl_standard_examples target only test Tcl and do not test Tk. I > think the only chance for you to test Tk for your non-X versions of Tk > will involve the tkwin shared object. However, some C source code > updating will be required to get that shared object to work with > modern PLplot as discussed previously in this thread. > > Alan > __________________________ > Alan W. Irwin > > Astronomical research affiliation with Department of Physics and Astronomy, > University of Victoria (astrowww.phys.uvic.ca). > > Programming affiliations with the FreeEOS equation-of-state > implementation for stellar interiors (freeeos.sf.net); the Time > Ephemerides project (timeephem.sf.net); PLplot scientific plotting > software package (plplot.sf.net); the libLASi project > (unifont.org/lasi); the Loads of Linux Links project (loll.sf.net); > and the Linux Brochure Project (lbproject.sf.net). > __________________________ > > Linux-powered Science > __________________________ |