From: Alan W. I. <Ala...@gm...> - 2018-11-23 21:17:36
|
On 2018-11-23 08:28+0100 Ole Streicher wrote: [...] > It is the cmake command. When I start with an empty dir, and then do > > $ cmake /usr/share/doc/plplot-doc/examples/ > > I get the following output: > > --------------------------------8<---------------------------------------- > -- The C compiler identification is GNU 8.2.0 > -- Check for working C compiler: /usr/bin/cc > -- Check for working C compiler: /usr/bin/cc -- works > -- Detecting C compiler ABI info > -- Detecting C compiler ABI info - done > -- Detecting C compile features > -- Detecting C compile features - done > -- CMake version = 3.12.3 > -- CMAKE_SYSTEM_NAME = Linux > -- CMAKE_PLATFORM_INFO_DIR = /home/ole/Projects/2011/debian/plplot/x/CMakeFiles/3.12.3 > -- Found PkgConfig: /usr/bin/pkg-config (found version "0.29") > -- Looking for pkg-config - found > -- cxx_compiler_library_pathname_list = > -- A test cmake run with language = Ada enabled failed. > -- Specify -DENABLE_compiler_diagnostics=ON to see full CMake diagnostics concerning this failure. > -- WARNING: no working Ada compiler so disabling ada examples. > -- The CXX compiler identification is GNU 8.2.0 > -- Check for working CXX compiler: /usr/bin/c++ > -- Check for working CXX compiler: /usr/bin/c++ -- works > -- Detecting CXX compiler ABI info > -- Detecting CXX compiler ABI info - done > -- Detecting CXX compile features > -- Detecting CXX compile features - done > -- The Fortran compiler identification is GNU 8.2.0 > -- Check for working Fortran compiler: /usr/bin/gfortran > -- Check for working Fortran compiler: /usr/bin/gfortran -- works > -- Detecting Fortran compiler ABI info > -- Detecting Fortran compiler ABI info - done > -- Checking whether /usr/bin/gfortran supports Fortran 90 > -- Checking whether /usr/bin/gfortran supports Fortran 90 -- yes > -- Found JNI: /usr/lib/jvm/default-java/lib/libjawt.so > -- Could NOT find Qt5Svg (missing: Qt5Svg_DIR) > CMake Warning at /usr/lib/x86_64-linux-gnu/cmake/plplot/plplotConfig.cmake:5 (find_package): > Found package configuration file: > > /usr/lib/x86_64-linux-gnu/cmake/Qt5/Qt5Config.cmake > > but it set Qt5_FOUND to FALSE so package "Qt5" is considered to be NOT > FOUND. Reason given by package: > > Failed to find Qt5 component "Svg" config file at > "/usr/lib/x86_64-linux-gnu/cmake/Qt5Svg/Qt5SvgConfig.cmake" > > > > Call Stack (most recent call first): > CMakeLists.txt:471 (find_package) > > > -- CORE_Qt5_FOUND = ON > -- CORE_Qt5_VERSION_MAJOR = 5 > -- CORE_Qt5_VERSION_MINOR = 11 > -- CORE_Qt5_VERSION_PATCH = 2 > -- Qt5_FOUND = 0 > -- Qt5_VERSION_MAJOR = 5 > -- Qt5_VERSION_MINOR = 11 > -- Qt5_VERSION_PATCH = 2 > -- WARNING: Qt5 core build-tree and install-tree inconsistency > CMake Error at /usr/lib/x86_64-linux-gnu/cmake/plplot/export_plplot.cmake:279 (message): > The imported target "_Pltk_init2.7" references the file > > "/usr/lib/python2.7/dist-packages/_Pltk_init.so" > > but this file does not exist. Possible reasons include: > > * The file was deleted, renamed, or moved to another location. > > * An install or uninstall procedure did not complete successfully. > > * The installation package was faulty and contained > > "/usr/lib/x86_64-linux-gnu/cmake/plplot/export_plplot.cmake" > > but not all the files it references. > > Call Stack (most recent call first): > /usr/lib/x86_64-linux-gnu/cmake/plplot/plplotConfig.cmake:20 (include) > CMakeLists.txt:471 (find_package) > > > -- Configuring incomplete, errors occurred! > > --------------------------------8<---------------------------------------- > > A Makefile is not produced then. The produced logfile is attached. > > Any idea? Hi Ole: I think there are at least two issues above. I. Missing package Everything above leading up to -- WARNING: Qt5 core build-tree and install-tree inconsistency indicates there is an inconsistency between the environment you used to build and install PLplot and the environment you are using to test the installed examples tree. From the first set of messages, especially, Failed to find Qt5 component "Svg" config file at "/usr/lib/x86_64-linux-gnu/cmake/Qt5Svg/Qt5SvgConfig.cmake" I think the solution is you must install libqt5svg5-dev which apt-file tells me contains /usr/lib/x86_64-linux-gnu/cmake/Qt5Svg/Qt5SvgConfig.cmake. II. The second problem above starts with the message CMake Error at /usr/lib/x86_64-linux-gnu/cmake/plplot/export_plplot.cmake:279 (message) I am virtually positive what is going on is that PLplot installs the files corresponding to the exported target PLPLOT::_Pltk_init.so in one location, e.g., "/usr/lib/python2.7/dist-packages/_Pltk_init.so" and your Debian packaging automatically changes that location to something else creating an inconsistency between the location expected by the exported target, and the location where the file was installed. To avoid such exported target inconsistent location issues, it is imperative that you change the *PLplot* installation locations to the locations expected by Debian. Please look at your core build (not the build of the installed examples you were testing above) cmake output for instructions about how to get PLplot to modify installation locations. For example, here is the relevant part of my cmake output: -----------------------------------------------8<------------------------------------- Summary of CMake build system results for PLplot Install location variables which can be set by the user. N.B. These variables are ordered by decreasing degree of generality, with the _default_ values of the later ones in the list determined by the values of variables earlier in the list. So, for example, it is usually sufficient in the vast majority of cases to just set CMAKE_INSTALL_PREFIX, and the rest of these variables are adjusted accordingly (at least for a fresh configuration), and it is rare indeed that is is necessary for a user to set any variable here whose name does not start with "CMAKE_INSTALL_". CMAKE_INSTALL_PREFIX: /home/software/plplot/installcmake CMAKE_INSTALL_EXEC_PREFIX: /home/software/plplot/installcmake CMAKE_INSTALL_BINDIR: /home/software/plplot/installcmake/bin CMAKE_INSTALL_DATADIR: /home/software/plplot/installcmake/share CMAKE_INSTALL_LIBDIR: /home/software/plplot/installcmake/lib CMAKE_INSTALL_INCLUDEDIR: /home/software/plplot/installcmake/include CMAKE_INSTALL_INFODIR: /home/software/plplot/installcmake/share/info CMAKE_INSTALL_MANDIR: /home/software/plplot/installcmake/share/man CMAKE_INSTALL_PKG_CONFIG_DIR: /home/software/plplot/installcmake/lib/pkgconfig DATA_DIR: /home/software/plplot/installcmake/share/plplot5.13.0 LIB_DIR: /home/software/plplot/installcmake/lib INCLUDE_DIR: /home/software/plplot/installcmake/include/plplot BIN_DIR: /home/software/plplot/installcmake/bin DRV_DIR: /home/software/plplot/installcmake/lib/plplot5.13.0/drivers DOC_DIR: /home/software/plplot/installcmake/share/doc/plplot INFO_DIR: /home/software/plplot/installcmake/share/info MAN_DIR: /home/software/plplot/installcmake/share/man PKG_CONFIG_DIR: /home/software/plplot/installcmake/lib/pkgconfig FORTRAN_MOD_DIR: /home/software/plplot/installcmake/lib/fortran/modules/plplot JAR_DIR: /home/software/plplot/installcmake/share/java JAVAWRAPPER_DIR: /home/software/plplot/installcmake/lib/jni PYTHON_INSTDIR: /home/software/plplot/installcmake/lib/python3.6/site-packages PLPLOT_OCTAVE_DIR: /home/software/plplot/installcmake/share/plplot_octave OCTAVE_M_DIR: /home/software/plplot/installcmake/share/octave/site/m/PLplot OCTAVE_OCT_DIR: /home/software/plplot/installcmake/lib/octave TCL_DIR: /home/software/plplot/installcmake/share/plplot5.13.0/tcl ADA_INCLUDE_DIR: /home/software/plplot/installcmake/share/ada/adainclude/plplotada ADA_LIB_DIR: /home/software/plplot/installcmake/lib/ada/adalib/plplotada LUA_DIR: /home/software/plplot/installcmake/lib/lua/plplot OCAML_INSTALL_DIR: /home/software/plplot/installcmake/lib/ocaml -----------------------------------------------8<------------------------------------- Of course, your own list of install locations will be quite different (since I am using a a completely different installation prefix than you), but your should modify your list (e.g., by setting -DCMAKE_INSTALL_LIBDIR=<Debian library install location> -DPYTHON_INSTDIR=<Debian Python install location) in your core build so that your Debian packager does not have to change *any* file location installed by PLplot which then forces the exported targets for the install to have the correct file locations. Alan __________________________ Alan W. Irwin 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 __________________________ |