On 2015-05-22 12:57-0000 Arjen Markus wrote: > Hi Alan, > > > >> -----Original Message----- >> From: Alan W. Irwin [mailto:ir...@beluga.phys.uvic.ca] >> >> So to help you with that installation task I did some research, and here are >> the >> missing PLplot components from your current comprehensive testing (in order >> of the >> CMake WARNING messages about these issues); the regular expression search >> term I used at the 64-bit version of >> <http://cygwin.com/cgi-bin2/package-grep.cgi> to >> find the package; and the corresponding name of that package. >> >> PLplot component GUI search term Cygwin 64-bit >> >> java bindings java Nothing relevant >> octave bindings octave octave-devel-3.8.2-1 >> Tcl/Itcl bindings itcl tcl-itcl-3.4.1-1 >> ada bindings gnatmake cygwin32-gcc-ada-4.9.2-1 >> lua bindings lua.h lua-5.1.5-1 >> d bindings gdc Nothing relevant >> libqhull prerequisite qhull.h libqhull-devel-2012.1-2 >> psttf device driver LASi.h libLASi-devel-1.1.1-2 >> pyqt4 bindings sip.h python-sip-4.16.7-1 >> wxwidgets device driver wx.h libwx_gtk2u2.8-devel-2.8.12.1-5 >> pdf device driver hpdf.h Nothing relevant >> ocaml bindings ocamlc ocaml-base-4.01.0-2 >> gtk+-x11-2.0 support gtk+-x11-2.0.pc libgtk2.0-devel-2.24.28-1 >> >> Installation of these packages and my fixes for any issues you find with that >> broadened scope of comprehensive testing should make PLplot nearly as >> powerful >> on Cygwin as it currently is on Linux, and I am very much looking forward to >> achieving that goal! >>
> I installed the above packages (oh, forgot about wxwidgets), but some of them were not fully acknowledged by CMake (see the attached tarball) . > >> From the report by CMake: > > - Itcl is not accepted, because CMake could not find the accompanying > library - that is available though > > - Ocaml is not accepted, because CMake can not find camlidl, well that > is simply not in the installation. I installed all things that contained > "caml" in their name/description, but it is missing from Cygwin nonetheless > > - Qhull is not accepted either, same issue as for Itcl > > - Pyqt4 is not accepted because CMake does not find sip - again it all > seems to be there > > - Tk is turned off because there was no X Window server, but that has > different issues Hi Arjen: I was extremely happy to see that your report contained no messages concerning WIN32 not being defined on Cygwin so that we can finally put that build-system issue to rest. And this time there did not appear to be any warnings concerning X or X access. Did you change something with regard to X? Here is my review of your remaining cmake WARNINGS about missing components. 1. Octave: -- WARNING: Required external octave header, hdf5.h, not found. Disabling octave bindings -- OCTAVE_LIBRARIES = /usr/lib/octave/3.8.2/liboctave.dll.a -- OCTINTERP_LIBRARIES = /usr/lib/octave/3.8.2/liboctinterp.dll.a -- OCTAVE_INCLUDE_PATH = /usr/include/octave-3.8.2;/usr/include/octave-3.8.2/octave My 64-bit search for hdf5.h indicates you should install libhdf5-devel-1.8.14-1. (I have now [commit id = 7d1dfa8] modified the above WARNING message to make that clearer.) On Debian wheezy, the octave-devel package depends on libhdf5-devel, but I guess that is not the case for Cygwin (which is likely a packaging bug on that platform) which is why you have to install this extra package on that platform. I hope that change will finally allow you to test our Octave binding and examples on Cygwin. 2. Tcl/Tk/Itcl/Itk -- Start determining consistent system data for Tcl and friends -- Found Tclsh: /usr/bin/tclsh (found version "8.5") -- Found TCL: /usr/local/lib/libtcl86.a -- Could NOT find TCLTK (missing: TK_LIBRARY TK_INCLUDE_PATH) -- Could NOT find TK (missing: TK_LIBRARY TK_INCLUDE_PATH) -- Looking for Tcl - found -- TCL_INCLUDE_PATH = /usr/include -- TCL_LIBRARY = /usr/local/lib/libtcl86.a -- TCL_STUB_LIBRARY = /usr/local/lib/libtclstub86.a -- TCL_LIBRARY_PATH = /usr/local/lib -- Looking for tclsh - found -- TCL_TCLSH = /usr/bin/tclsh -- Looking for Tcl version with tclsh - found -- PLPLOT_TCL_VERSION = 8.5.18 -- WARNING: Tcl library version = 8.6 that is extracted from the library name is not consistent with PLPLOT_TCL_VERSION = 8.5.18 [...] The PLplot build system continues with Tcl/Tk/Itcl/Itk configuration despite this last version inconsistency warning, and that eventually lead to other issues. But it seems to me this is the problem you need to address since this is a serious inconsistency issue, i.e, you are attempting to combine Tcl from Cygwin with some other /usr/local version which is obviously not from an official Cygwin package. So if you want to continue to use the official Cygwin version of tclsh that you have installed with tcl-8.5.18-1 it is essential you also install the consistent set of Cygwin development packages, e.g., tcl-devel-8.5.18-1, tcl-tk-devel-8.5.18-1, tcl-itcl-3.4.1-1, and tcl-itk-3.3-2 (found respectively by using the search strings "tcl-devel", "tk-devel", itcl.h, and itk.h). Note that installation of tcl-tk-devel-8.5.18-1 should also take care of the two "-- Could NOT find..." messages above. Also, I note you set TCL_INCLUDE_PATH, but please try without that workaround which I doubt will be necessary if you have the correct Cygwin packages installed. You may have to set CMAKE_LIBRARY_PATH and CMAKE_INCLUDE_PATH environment variables to force CMake to find consistent Tcl/Tk/Itcl/Itk versions and to avoid using the /usr/local version you also seem to have. Or that might not be necessary. Also, another option is if the /usr/local version is some left over version you do not have any further use for I would just delete it to keep it from confusing CMake. Once you install the appropriate development packages, I am pretty sure this will take care of all remaining Tcl/Tk/Itcl/Itk inconsistency warnings, but if not, there should be enough information given out by our build system to allow you to diagnose and fix exactly what that remaining Tcl/Tk/Itcl/Itk version inconsistency issue(s) might be. 3. Ada -- WARNING: gnat library not found. Disabling ada bindings Sorry. I gave you an incorrect cygwin32-gcc-ada-4.9.2-1 package to install above. I now realize that is a 32-bit version of the Ada compiler with libraries in a different location that only a 32-bit gcc could find. So you should purge that package and any other 32-bit compiler packages it sucked in as dependencies from your system and install instead gcc-ada-4.9.2-3 which should be exactly consistent with your principal 64-bit gcc package. And this illustrates the point (valid on both Linux and Cygwin) that you should always keep an exact record of what is installed so that it is easy to purge again. And in any case I hope you are keeping an exact record (or will do so from now on) since the list of Cygwin packages that should be installed as PLplot prerequisites is important information that should be in our wiki. 4. Lua. Your install of lua-5.1.5-1 lead to no obvious configuration, build, or run-time errors. So that is already an excellent result, and I checked further in, e.g., shared/output_tree/make_noninteractive.out to find the following: lua Missing examples : Differing graphical output : 04 26 Missing stdout : Differing stdout : which I exactly replicate here for the same Lua version (5.1) that is available on Cygwin. So that exact similarity between Cygwin and Linux is the best you can do at the present time. However, note that the best PLplot support for Lua is for 5.2 where the above issues disappear here. So to get that same perfect result eventually there, I suggest you gently encourage the Lua packager for Cygwin to upgrade to 5.2. :-) 5: libqhull -- WARNING: qhull library not found. Setting PL_HAVE_QHULL to OFF. The above failure message is way too terse. I have now changed that. A typical set of failure messages on Linux for qhull is now -- qhull_a.h header could not be found -- qhull library could not be found -- Could NOT find QHULL (missing: QHULL_INCLUDE_DIRS QHULL_LIBRARIES QHULL_LIBRARY_DIRS) -- QHULL_INCLUDE_DIRS = -- QHULL_LIBRARIES = -- WARNING: at least one of QHULL_INCLUDE_DIRS or QHULL_LIBRARIES is false so setting PL_HAVE_QHULL to OFF. And here is a typical set of success messages on Linux for qhull: -- Found QHULL: /home/software/qhull/install/include -- Looking for qh_new_qhull -- Looking for qh_new_qhull - found -- QHULL_INCLUDE_DIRS = /home/software/qhull/install/include -- QHULL_LIBRARIES = /home/software/qhull/install/lib/libqhull.so -- QHULL_RPATH = /home/software/qhull/install/lib The other issue here is your search for qhull failed unexpectedly. If you look in libqhull-devel-2012.1-2, it contains /usr/include/libqhull/qhull_a.h The issue is that our qhull find module was searching for qhull/qhull_a.h rather than libqhull/qhull_a.h. So I have now (commit id = 87a9504 ) fixed that so it looks for both. This also required that I change the style of our qhull #includes in that commit from #include <qhull/qhull_a.h> ==> #include <qhull_a.h> I am hoping that these changes will fix the Cygwin qhull troubles and therefore make PLplot's plgriddata command on Cygwin just as powerful as it is on Linux. 6. psttf device driver. All seems well there now. That device driver implements the psttfc and psttf devices which should produce really nice-looking PostScript results for you on Cygwin. 7. pyqt4 bindings -- WARNING: sip not found so setting ENABLE_pyqt4 to OFF. I notice that sip.exe is located in the python-sip-4.16.7-1 package at /usr/lib/python2.7/site-packages/sip.exe rather than in the expected /usr/bin/sip.exe location. That seems like a Cygwin packaging error to me. Try working around that issue by putting /usr/lib/python2.7/site-packages/ on your PATH to see if that makes your pyqt4 issues go away. 8. wxwidgets device driver. Please do install libwx_gtk2u2.8-devel-2.8.12.1-5. 9. ocaml bindings -- OCAMLC = /usr/bin/ocamlc.opt -- WARNING:camlidl not found. Disabling ocaml bindings I agree with your analysis above that camlidl is not available on Cygwin. Since camlidl is used to help generate the ocaml binding for PLplot, this is an ocaml binding showstopper on Cygwin that we can do nothing about (unless you request Cygwin packaging of camlid, and someone implements that). 10. gtk+-x11-2.0 support. All appeared to be well in this case. To summarize all of this, there appears to be nothing you can do for java, d, pdf, or ocaml. Components that you just got to work this time or which should be fine on your next try due to changes I made are the lua binding, libqhull support library, psttf device driver, and gtk+-x11-2.0 support. However, there is more you can still do for Octave (install an additional package); Tcl/Tk/Itcl/Itk (get rid of version inconsistency issues by installing relevant packages); Ada (uninstall the incorrect package I suggested [and its dependencies that were installed] and install the correct Ada package instead); pyqt4 (put sip.exe on your PATH); and wxwidgets (please install libwx_gtk2u2.8-devel-2.8.12.1-5). Please test again with the above additional packages installed, the suggested PATH change, and for the latest git version of PLplot (which includes my recent fix that affects Cygwin). I am very much looking forward to those still broader test results on Cygwin. 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 __________________________ ------------------------------------------------------------------------------ _______________________________________________ Plplot-devel mailing list Plplot-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/plplot-devel