From: Alan W. I. <ir...@be...> - 2007-03-15 01:21:57
|
I have just now finally figured out how to use the first form of TRY_COMPILE for the Ada language testing. This makes the Ada language test similar to any add_executable with Ada. Thus, any changes to the Ada build rules (such as the one I just put in for the http://macada.org/ users [e.g., Jerry] on Mac OS X) automatically get used now for the Ada language test. I believe (since I am an optimist) that this should be the last change Jerry needs so he can build the Ada interface to PLplot and run the Ada examples with ctest on his Mac OS X/macada.org platform. But if something more is needed, I am confident we will be able to figure it out. 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 Yorick front-end to PLplot (yplot.sf.net); the Loads of Linux Links project (loll.sf.net); and the Linux Brochure Project (lbproject.sf.net). __________________________ Linux-powered Science __________________________ |
From: Alan W. I. <ir...@be...> - 2007-03-15 19:07:28
|
On 2007-03-14 18:20-0700 Alan W. Irwin wrote: > I have just now finally figured out how to use the first form of TRY_COMPILE > for the Ada language testing. This makes the Ada language test similar to > any add_executable with Ada. Thus, any changes to the Ada build rules (such > as the one I just put in for the http://macada.org/ users [e.g., Jerry] on > Mac OS X) automatically get used now for the Ada language test. > > I believe (since I am an optimist) that this should be the last change Jerry > needs so he can build the Ada interface to PLplot and run the Ada examples > with ctest on his Mac OS X/macada.org platform. But if something more is > needed, I am confident we will be able to figure it out. Well, I was too optimistic. :-) Jerry continued to have problems, but he kindly sent me a really clear script of exactly what he did + full cmake.out results which eliminated all sorts of possibilities and eventually lead me to look in minute detail at what happens on Linux. If you force verbose output for the TRY_COMPILE step it turns out the TRY_COMPILE is still not working correctly! In the Linux case it manages to escape the problem and return success even though a nonsensical command was used rather than a test of an Ada build. On Mac OS X it completely fails to escape the TRY_COMPILE problem and returns a failure. For now, I have temporarily replaced this non-working test with something innocuous that should always return success on all platforms. After all, testing the Ada builder in a complicated (and poorly documented!) TRY_COMPILE environment is a refinement, and for now it is probably better to let Ada errors show up under an ordinary make or ctest environment instead where everything is much better understood. Jerry, please let me know whether this simplifying change allows you to proceed further. Also, I wish to thank you publicly for giving me especially clear test results which helped me to discover this on-going problem with testing the Ada builder under a TRY_COMPILE environment. 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 Yorick front-end to PLplot (yplot.sf.net); the Loads of Linux Links project (loll.sf.net); and the Linux Brochure Project (lbproject.sf.net). __________________________ Linux-powered Science __________________________ |
From: Alan W. I. <ir...@be...> - 2007-03-16 20:40:19
|
On 2007-03-15 12:06-0700 Alan W. Irwin wrote: > Jerry continued to have problems, but he kindly sent me a really clear > script of exactly what he did + full cmake.out results which eliminated all > sorts of possibilities and eventually lead me to look in minute detail at > what happens on Linux. If you force verbose output for the TRY_COMPILE step > it turns out the TRY_COMPILE is still not working correctly! In the Linux > case it manages to escape the problem and return success even though a > nonsensical command was used rather than a test of an Ada build. On Mac OS > X it completely fails to escape the TRY_COMPILE problem and returns a > failure. > > For now, I have temporarily replaced this non-working test with something > innocuous that should always return success on all platforms. After all, > testing the Ada builder in a complicated (and poorly documented!) > TRY_COMPILE environment is a refinement, and for now it is probably better > to let Ada errors show up under an ordinary make or ctest environment > instead where everything is much better understood. > > Jerry, please let me know whether this simplifying change allows you to > proceed further. Jerry reported further progress off-list, we had several more iterations, and now I can report he can do a cmake, make, and make install without problems for CVS HEAD. Furthermore, his own non-cmake build of some of his private examples now works with the latest (installed?) libplplot library for the first time. So that is all good progress, but there are still the following issues. (1) Jerry's successful test reported above of "make install" is certainly a worthwhile test of the install of non-Ada PLplot software, but it is not relevant to the install of Ada PLplot software since I am waiting to implement that until after the build-tree Ada issues (e.g., ctest, see below) are solved. (2) ctest does not work with the Ada examples on Mac OS X for Jerry. Apparently "make" builds the Ada executables without obvious errors, but the build-tree libplplotadad library cannot be found at run time. Does anybody here know the Mac OS X equivalent of the Linux LD_LIBRARY_PATH? (It was mentioned a year or two ago on list, but I have forgotten its name.) Setting that environment variable may be required before the x01a, etc., Ada examples will work in the build tree. Hazen, I have an important question for you. What are your current results (after "cmake -DBUILD_TEST=ON" and "make" are run) for ctest --verbose --tests-regex c ? Do you have to set any environment variables (see question above about the Mac OS X equivalent of LD_LIBRARY_PATH) to get the build-tree C examples run by the above ctest invocation to work? If you have no problems with ctest for the C examples, and Jerry does (not proved yet one way or the other), then that might give a clue about what is going wrong for his attempt to run Ada examples that were built in the build tree. 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 Yorick front-end to PLplot (yplot.sf.net); the Loads of Linux Links project (loll.sf.net); and the Linux Brochure Project (lbproject.sf.net). __________________________ Linux-powered Science __________________________ |
From: Werner S. <sm...@ia...> - 2007-03-16 20:50:01
|
Hi, > Does anybody here know the Mac OS X equivalent of the Linux LD_LIBRARY_PATH? > (It was mentioned a year or two ago on list, but I have forgotten its name.) > Setting that environment variable may be required before the x01a, etc., Ada > examples will work in the build tree. > DYLD_LIBRARY_PATH HTH, Werner |
From: Alan W. I. <ir...@be...> - 2007-03-17 12:03:15
|
On 2007-03-16 21:49+0100 Werner Smekal wrote: > Hi, >> Does anybody here know the Mac OS X equivalent of the Linux LD_LIBRARY_PATH? >> (It was mentioned a year or two ago on list, but I have forgotten its name.) >> Setting that environment variable may be required before the x01a, etc., Ada >> examples will work in the build tree. >> > > DYLD_LIBRARY_PATH Thanks, Werner, for coming through with the name of that environment variable. Setting that environment variable (to a combination of paths for the plplotadad and gnat libraries) made all the difference, and Jerry reports complete ctest success with the Ada examples now for his Mac OS X/MacAda platform. Note, Jerry already had complete success with ctest for the C examples without having to set DYLD_LIBRARY_PATH so I have no idea why it is necessary in the Ada case. I have some other priorities that are beginning to intrude in the short term at the moment, but I hope in the intermediate term to figure out some CMake build system changes so that it will no longer be necessary to use the DYLD_LIBRARY_PATH workaround to get ctest to work for MacAda. Meanwhile, it is really nice to know that workaround exists since it should allow Jerry to use the convenient ctest procedure while he figures out the thin interface anomalies we have discovered with the existing standard examples. Just to be clear, Jerry, about that convenient procedure, if all you are doing is changes in existing source code (e.g., plplotthin.adb, plplot.adb, and/or one of the examples in the source tree) but not changing configuration options or changing CMake configuration files you only have to clean out the build tree and execute cmake once, and from then on all you have to do is execute make and ctest for each source code change which should save considerable time. Also, note if you add a new example (say x02a.adb), then you have to modify examples/ada/CMakeLists.txt and test/test_ada.sh.in in an obvious way to add 02 to the lists in those files. Those files are CMake configuration files so you have to make a fresh start (clean out the build tree, run cmake) after such a change. However, while debugging the new example afterward with just source code changes, you can stick with just the make and ctest commands. I hope those important distinctions between changes to source code and changes to CMake configuration files are clear. 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 Yorick front-end to PLplot (yplot.sf.net); the Loads of Linux Links project (loll.sf.net); and the Linux Brochure Project (lbproject.sf.net). __________________________ Linux-powered Science __________________________ |