On 2009-03-02 11:38-0600 Thomas Stover wrote: > Thanks for the input on cross compiling with cmake. Using the latest version > of cmake, and the documentation I made a number of attempts to use mingw to > build a win32 plplot from a linux host. By the end of the day Friday I > reached the conclusion that although this is probably possible using the new > cmake, almost certainly the cmake project itself would needs some tweaks. If > anyone is interested I can go into the details of that.
I think doing your own specific Makefile based build system for PLplot would work, but I also think it would take a rather large effort on your part with no beneficial networking effects at all (nobody else would use your approach so you could gain little help from anybody else or lend help to anybody else). Furthermore, developing your CMake skills is worth doing in its own right since an increasing number of projects (KDE is probably the biggest of these) use it. Therefore, I encourage you to stick with CMake a bit longer even though you are unfamiliar with it at the moment. Whatever you decide to do, cross-compilation is going to be tricky because of all the various library dependencies (mostly from PLplot device drivers, but the core PLplot library also has a few library dependencies). All the dependent libraries must be available for the "other" platform before PLplot can be built for the "other" platform. So I suggest you start with a simple PLplot cross-compile with no library dependencies, and once that works, go on from there adding dependencies in small amounts. Specifically, build just the plplot C library (with libqhull and freetype dropped to eliminate those dependencies and with no dynamic drivers to eliminate the dependence on dynamic loading libraries) and the ps device driver (which has no external dependencies). The appropriate cmake options for that build scenario are -DDEFAULT_NO_BINDINGS=ON \ -DHAVE_QHULL=OFF -DWITH_FREETYPE=OFF -DENABLE_DYNDRIVERS=OFF \ -DDEFAULT_NO_DEVICES=ON -DPLD_ps=ON Can you get that combination to work with (a) an ordinary build on Linux, (b) an ordinary build on MinGW, and (c) a cross-build on Linux for MinGW? Once you get that first simple cross-build working properly, then I think the next step is to figure out what to do with dynamic devices. That does work on MinGW so it should be straightforward to get it to work for a Linux cross-build for MinGW, but I am not familiar with the MinGW dynamic device details so someone else will have to help you there. The next step after cross-built dynamic devices work could be cross-build of cairo-based devices. A pango/cairo stack is available for MinGW Windows so extending the cross-build to use cairo devices should be straightforward. In sum, my advice is to stick with CMake (since we should be able to give you some help in that case, and CMake skill with a normal build environment and also a cross-build environment is worth developing in its own right), and take it one step at a time. Do the simplest cross-build first with no dependencies. Once that works, start adding dependencies to your cross-build in small steps until you achieve the cross-build that you desire. Good luck! 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); PLplot scientific plotting software package (plplot.org); 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 __________________________ ------------------------------------------------------------------------------ Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA -OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise -Strategies to boost innovation and cut costs with open source participation -Receive a $600 discount off the registration fee with the source code: SFAD http://p.sf.net/sfu/XcvMzF8H _______________________________________________ Plplot-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/plplot-devel
