On 2017-08-16 06:19-0000 Arjen Markus wrote:
[See] the attached tarball [...]
I analyzed your unpacked report tarball using the following commands:
# Check for any warning regressions in the cmake output.
less shared/noninteractive/output_tree/cmake.out
The only issue I found that was related to your platform installation
was a consistent version of itcl could not be found, see further
comment below about that.
# Check for any files that are not from MinGW-w64/MSYS2. This is a
# critical check for most of your comprehensive test results because
# you have at least 3 platforms (MinGW-w64/MSYS2, Cygwin, and MSVC)
# installed, and the first two of those should never use files from a
# different platform. This is also true of the MSVC platform with the
# notable exception of just the Unix tools (but not the libraries) from
# MinGW-w64/MSYS2 that you need to test the MSVC platform.
grep -E '/|\\' shared/noninteractive/build_tree/CMakeCache.txt
shared/noninteractive/output_tree/* \
|grep -Ev '//|mingw64-2|comprehensive_test_disposeable|CMakeFiles/|test_examples_output_dir|Test *#|plplot-svn/plplot-git|/dll/|test_dyndrivers_dir/|/plplot-test.sh|Output file name is'
shared/noninteractive/build_tree/CMakeCache.txt:COMDLG32_LIBRARY:FILEPATH=C:/Windows/System32/comdlg32.dll
shared/noninteractive/build_tree/CMakeCache.txt:CYGWIN_INSTALL_PATH:PATH=C:/cygwin64
shared/noninteractive/build_tree/CMakeCache.txt:GDI32_LIBRARY:FILEPATH=C:/Windows/System32/gdi32.dll
shared/noninteractive/build_tree/CMakeCache.txt:PERL_EXECUTABLE:FILEPATH=C:/cygwin64/bin/perl.exe
shared/noninteractive/build_tree/CMakeCache.txt:PL_FREETYPE_FONT_PATH:PATH=c:/windows/fonts
shared/noninteractive/build_tree/CMakeCache.txt:TCL_INCLUDE_PATH:PATH=C:/Tcl/include
shared/noninteractive/build_tree/CMakeCache.txt:TCL_TCLSH:FILEPATH=C:/Tcl/bin/tclsh.exe
shared/noninteractive/build_tree/CMakeCache.txt:TK_INCLUDE_PATH:PATH=C:/Tcl/include
shared/noninteractive/build_tree/CMakeCache.txt:TK_WISH:FILEPATH=C:/Tcl/bin/wish.exe
shared/noninteractive/build_tree/CMakeCache.txt:TTK_STUB_LIBRARY:FILEPATH=C:/Tcl/lib/ttkstub.lib
shared/noninteractive/build_tree/CMakeCache.txt:WWW_DIR:STRING=/home/groups/p/pl/plplot/htdocs/docbook-manual
shared/noninteractive/build_tree/CMakeCache.txt:XML_DECL:STRING=/usr/share/xml/declaration/xml.dcl
shared/noninteractive/build_tree/CMakeCache.txt:FIND_PACKAGE_MESSAGE_DETAILS_Perl:INTERNAL=[C:/cygwin64/bin/perl.exe][v5.22.4()]
shared/noninteractive/build_tree/CMakeCache.txt:FIND_PACKAGE_MESSAGE_DETAILS_Tclsh:INTERNAL=[C:/Tcl/bin/tclsh.exe][v8.6()]
shared/noninteractive/output_tree/cmake.out:-- Looking for DIR symbol in
sys/types.h;dirent.h
shared/noninteractive/output_tree/cmake.out:-- Looking for DIR symbol in
sys/types.h;dirent.h - found
shared/noninteractive/output_tree/cmake.out:-- Found Perl: C:/cygwin64/bin/perl.exe (found version "5.22.4")
shared/noninteractive/output_tree/cmake.out:-- Found Tclsh: C:/Tcl/bin/tclsh.exe (found version "8.6")
shared/noninteractive/output_tree/cmake.out:-- TCL_INCLUDE_PATH = C:/Tcl/include
shared/noninteractive/output_tree/cmake.out:-- TCL_TCLSH = C:/Tcl/bin/tclsh.exe
shared/noninteractive/output_tree/cmake.out:-- TK_INCLUDE_PATH = C:/Tcl/include
shared/noninteractive/output_tree/cmake.out:-- TK_WISH = C:/Tcl/bin/wish.exe
shared/noninteractive/output_tree/cmake.out:-- TKLIB_COMPILE_FLAGS =
-I"C:/Tcl/include"
shared/noninteractive/output_tree/cmake.out:-- ntk_COMPILE_FLAGS = -I"C:/Tcl/include"
-I"C:/Tcl/include"
shared/noninteractive/output_tree/cmake.out: and/or set the environment
variable PKG_CONFIG_PATH appropriately.
shared/noninteractive/output_tree/cmake.out:-- WARNING: Perl modules
XML::Parser and/or XML::DOM not available
shared/noninteractive/output_tree/installed_make_noninteractive.out:c/ext-cairo-test.exe
-drvopt set_background=1
shared/noninteractive/output_tree/traditional_clean.out:rm -f *.psc *.pdfcairo
*.pngcairo *.pscairo *.svgcairo \
shared/noninteractive/output_tree/traditional_clean.out:*.gif *.jpeg *.png
*.psttfc *.svg *.xfig *.pstex* *.*qt *.cgm \
shared/noninteractive/output_tree/traditional_clean.out:*_*.txt test.error \
shared/noninteractive/output_tree/traditional_make_noninteractive.out:./test_diff.sh
The above initial grep search for either "/" or "\" searches for all
filenames in those files and the trailing grep -vE stanza above
eliminates all instances where these forms of filenames should be
expected for this platform. So what is left is quite interesting!
From these results there appears to be at least the following three issues:
* The package containing tclsh.exe needs to be found with pkgfile and
installed (to avoid finding the non-MSYS2 version of tclsh.exe in
C:/Tcl). Or if this package is already installed, some adjustment
of environment variables needs to be made (or C:Tcl has to be
removed altogether) to avoid finding the "C:/Tcl" version of
tclsh.exe.
* The package containing wish.exe probably needs to be installed
(to avoid finding the "C:/Tcl" version).
* The package containing perl.exe needs to be installed (to avoid
finding the non-MSYS2 Cygwin version).
The first issue is obviously critical. So you need to solve it before
running this test again. This critical improvement will very likely
also solve another problematic issue that I noticed (above) which is
that a consistent version of itcl could not be found by our build
system with the (incorrect for this platform) "C:/Tcl" version of Tcl/Tk.
The second issue should be trivial to fix now that pkgfile is working
properly for you. Of course, X is not present on this platform so our
build system drops all our Tk-related components other than ntk (our
only Tk component that is currently independent of X). So I am not
sure how much PLplot actually uses wish.exe on this platform.
Nevertheless, if pkgfile gives you a clear choice of package here, I
would advise installing that package. The net result should be no
references to "C:/Tcl" anywhere.
The third of these issues is similar to the git one, i.e.,
it should be trivial to fix now that pkgfile is working properly for
you, but it is not a critical issue so it can be put off to
post-release if you so desire.
# Check for some non-standard warnings:
grep -i warning */*/output_tree/*.out \
|grep -vE 'cmake.out|ctest.out' \
|grep -vE 'PLPLOT WARNING|PRIVATE|deprecated|Resource leak|2 problems|Some
graphical or stdout'
# Check for any ldd issues for the shared and nondynamic cases.
grep -iE 'found|symbol|undefined' */*/output_tree/*ldd.out
# Check for any PostScript or Text differences between all non-C languages
# and the corresponding C results.
grep -B1 -A3 "Missing examples" */*/output_tree/*.out |less
# Check for all errors:
grep -i error */*/output_tree/*.out
The previous checks were fine, but this last one yielded
static/noninteractive/output_tree/ctest.out:Errors while running CTest
which was due to a timeout error for the epsqt case which stopped
the static testing part of our test rather early in that part of
the comprehensive test.
To investigate this test error further, here is the summary for your
MinGW-w64/MSYS2 platform of the times taken by all the ctests for the
qt devices for our three major configurations (shared, nondynamic, and
static)
irwin@raven> grep 'Test #.*examples_.*qt' */*/output_tree/ctest.out
nondynamic/noninteractive/output_tree/ctest.out:12/24 Test #12: examples_epsqt
................... Passed 278.76 sec
nondynamic/noninteractive/output_tree/ctest.out:13/24 Test #13: examples_pdfqt
................... Passed 313.22 sec
nondynamic/noninteractive/output_tree/ctest.out:14/24 Test #14: examples_bmpqt
................... Passed 87.16 sec
nondynamic/noninteractive/output_tree/ctest.out:15/24 Test #15: examples_jpgqt
................... Passed 172.39 sec
nondynamic/noninteractive/output_tree/ctest.out:16/24 Test #16: examples_pngqt
................... Passed 58.65 sec
nondynamic/noninteractive/output_tree/ctest.out:17/24 Test #17: examples_ppmqt
................... Passed 87.78 sec
nondynamic/noninteractive/output_tree/ctest.out:18/24 Test #18: examples_tiffqt
.................. Passed 88.26 sec
nondynamic/noninteractive/output_tree/ctest.out:19/24 Test #19: examples_svgqt
................... Passed 154.18 sec
shared/noninteractive/output_tree/ctest.out:12/24 Test #12: examples_epsqt
................... Passed 339.58 sec
shared/noninteractive/output_tree/ctest.out:13/24 Test #13: examples_pdfqt
................... Passed 338.77 sec
shared/noninteractive/output_tree/ctest.out:14/24 Test #14: examples_bmpqt
................... Passed 129.30 sec
shared/noninteractive/output_tree/ctest.out:15/24 Test #15: examples_jpgqt
................... Passed 215.66 sec
shared/noninteractive/output_tree/ctest.out:16/24 Test #16: examples_pngqt
................... Passed 133.00 sec
shared/noninteractive/output_tree/ctest.out:17/24 Test #17: examples_ppmqt
................... Passed 131.41 sec
shared/noninteractive/output_tree/ctest.out:18/24 Test #18: examples_tiffqt
.................. Passed 171.87 sec
shared/noninteractive/output_tree/ctest.out:19/24 Test #19: examples_svgqt
................... Passed 155.59 sec
static/noninteractive/output_tree/ctest.out:10/22 Test #10: examples_epsqt
...................***Timeout 1500.12 sec
static/noninteractive/output_tree/ctest.out:11/22 Test #11: examples_pdfqt
................... Passed 1437.34 sec
static/noninteractive/output_tree/ctest.out:12/22 Test #12: examples_bmpqt
................... Passed 68.43 sec
static/noninteractive/output_tree/ctest.out:13/22 Test #13: examples_jpgqt
................... Passed 48.88 sec
static/noninteractive/output_tree/ctest.out:14/22 Test #14: examples_pngqt
................... Passed 54.99 sec
static/noninteractive/output_tree/ctest.out:15/22 Test #15: examples_ppmqt
................... Passed 58.35 sec
static/noninteractive/output_tree/ctest.out:16/22 Test #16: examples_tiffqt
.................. Passed 101.99 sec
static/noninteractive/output_tree/ctest.out:17/22 Test #17: examples_svgqt
................... Passed 90.05 sec
For comparison purposes here are the equivalent times taken here for the same
ctests on my Debian Jessie platform:
software@raven> grep 'Test #.*examples_.*qt' */*/output_tree/ctest.out
nondynamic/noninteractive/output_tree/ctest.out:17/31 Test #19: examples_bmpqt
................... Passed 50.79 sec
nondynamic/noninteractive/output_tree/ctest.out:18/31 Test #18: examples_pdfqt
................... Passed 57.25 sec
nondynamic/noninteractive/output_tree/ctest.out:19/31 Test #20: examples_jpgqt
................... Passed 49.61 sec
nondynamic/noninteractive/output_tree/ctest.out:20/31 Test #17: examples_epsqt
................... Passed 81.75 sec
nondynamic/noninteractive/output_tree/ctest.out:21/31 Test #22: examples_ppmqt
................... Passed 47.97 sec
nondynamic/noninteractive/output_tree/ctest.out:22/31 Test #23: examples_tiffqt
.................. Passed 50.18 sec
nondynamic/noninteractive/output_tree/ctest.out:23/31 Test #21: examples_pngqt
................... Passed 54.98 sec
nondynamic/noninteractive/output_tree/ctest.out:28/31 Test #24: examples_svgqt
................... Passed 80.66 sec
shared/noninteractive/output_tree/ctest.out:17/31 Test #19: examples_bmpqt
................... Passed 48.96 sec
shared/noninteractive/output_tree/ctest.out:18/31 Test #20: examples_jpgqt
................... Passed 48.34 sec
shared/noninteractive/output_tree/ctest.out:19/31 Test #18: examples_pdfqt
................... Passed 56.96 sec
shared/noninteractive/output_tree/ctest.out:20/31 Test #17: examples_epsqt
................... Passed 80.28 sec
shared/noninteractive/output_tree/ctest.out:21/31 Test #21: examples_pngqt
................... Passed 51.80 sec
shared/noninteractive/output_tree/ctest.out:22/31 Test #23: examples_tiffqt
.................. Passed 48.90 sec
shared/noninteractive/output_tree/ctest.out:23/31 Test #22: examples_ppmqt
................... Passed 48.90 sec
shared/noninteractive/output_tree/ctest.out:28/31 Test #24: examples_svgqt
................... Passed 76.18 sec
static/noninteractive/output_tree/ctest.out:13/27 Test #15: examples_bmpqt
................... Passed 62.59 sec
static/noninteractive/output_tree/ctest.out:14/27 Test #16: examples_jpgqt
................... Passed 58.59 sec
static/noninteractive/output_tree/ctest.out:15/27 Test #14: examples_pdfqt
................... Passed 70.07 sec
static/noninteractive/output_tree/ctest.out:16/27 Test #13: examples_epsqt
................... Passed 97.40 sec
static/noninteractive/output_tree/ctest.out:17/27 Test #18: examples_ppmqt
................... Passed 57.96 sec
static/noninteractive/output_tree/ctest.out:18/27 Test #19: examples_tiffqt
.................. Passed 60.73 sec
static/noninteractive/output_tree/ctest.out:19/27 Test #17: examples_pngqt
................... Passed 68.72 sec
static/noninteractive/output_tree/ctest.out:24/27 Test #20: examples_svgqt
................... Passed 93.94 sec
So for some unknown reason on the MinGW-w64/MSYS2 platform the ctests
for both pdfqt and epsqt dramatically slow down for the static case
(compared to an actual speed up on that platform for the static case
for all other qt devices). And in the epsqt case (which the details
show almost completed) that slowdown was sufficiently large that it
ran into the default timeout limit of 1500 sec on tests done by ctest
and therefore errored out. I am virtually certain this static
inefficiency for these two devices for MinGW-w64/MSYS2 is a platform
issue (probably for the upstream Qt4 suite of libraries) that someone
will notice and fix eventually, but meanwhile we have to deal with the
fact that some ctests take longer than 1500 seconds on this platform.
So to work around this static library inefficiency issue for epsqt and
pdfqt for this platform (and also to allow our users who happen to
have really slow computers like the raspberry Pi to complete these
tests) I have changed (commit ac3473f) the default ctest timeout from
1500 seconds to 15000 seconds.
So please run this test again with the above platform install
issues fixed (other than perl.exe and git.exe which I have presumed
you want to put off dealing with until post-release) and using this
latest commit.
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
__________________________
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Plplot-devel mailing list
Plplot-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/plplot-devel