Matthew Woehlke wrote:
Bill Hoffman wrote:
Matthew Woehlke wrote:
A while back I "successfully"* built CMake on an x86/Solaris 10 box. Now, trying to build on a different box, I am getting a 51% failure rate in the test suite. Huh?!

(* the test suite has an odd problem with GNU make 3.81, otherwise it was clean)

I also can't seem to find any output from the failed tests, which were:
[snip]

Ideas? The most obvious difference I can think of is that a different compiler is being used in this case ("Sun C 5.8 2005/10/13", also there is a(n ancient!) gcc 2.95.3 available) versus the box where CMake tested OK ("Sun C 5.7 2005/01/07", no gcc available).

If the machine is on a network, you can do:
make Experimental

This will send the results to the CMake dashboard. Then others will be able to see the full results. If not you can run ctest -V to see more verbose output.

ctest -V was monumentally helpful...

ld.so.1: executable: fatal: libstdc++.so.2.10.0: open failed: No such file or directory

...I bet that's the problem in most/all cases. Ok, turns out (well, I sort-of knew this before, but) g++ is broken, at least in that binaries it produces all have this problem. Which means I seem to have found a "bug"; tests that involve compiling C++ programs either a: ignore that I was using CC=cc CXX=CC to build cmake, or b: fail to notice that g++ produces broken executables. (I'm attaching the full output of 'VERBOSE=1 bin/ctest -V -I 63,63'.)

After forcing the issue with 'CC=cc CXX=cxx bin/ctest', the test suite passes.

On a different note: I thought the verbose output was always written to a file somewhere; is this not the case?

FYI test 47 is leaking output as follows:
47/ 67 Testing wrapping sh: QT_MOC_EXECUTABLE-NOTFOUND: not found
sh: QT_UIC_EXECUTABLE-NOTFOUND: not found
   Passed

Another note: running test 63 "broken" once made it almost impossible to clean things up and re-run with the right compilers... ultimately I did 'rm -rf Tests' and re-unpacked the tarball to fix it. Is it supposed to be that difficult? (I did try nuking just Tests/SubDir/CMakeFiles first, to no effect.)

Anyway, thanks for the quick help!
Best thing to do is use out of source builds. Or you can use out of source builds.
mkdir CMake-build
../CMake/bootstrap
make
make test

If you need to clean up the tests.
rm -rf Tests
make
make tests

Did I mention that out of source builds work good for this...  :-)


-Bill

_______________________________________________
CMake mailing list
[email protected]
http://www.cmake.org/mailman/listinfo/cmake

Reply via email to