Строительный массив-визуализатор: include не смог найти загружаемый файл CMakeFindDependencyMacro

Я пытаюсь создать массив-визуализатор на CentOS 7. К сожалению, мне приходится пытаться угадайте зависимости, поскольку не все они перечислены в файле INSTALL. Уже:

yum install git
yum install kdelibs-devel extra-cmake-modules \
            qt5-qtsvg-devel qt5-qtxmlpatterns-devel \
            kf5-kparts-devel kf5-karchive-devel
git clone https://github.com/KDE/massif-visualizer
cd massif-visualizer
mkdir build
(cd build && cmake .. && make && make install)

Эти пакеты Qt5 и KF5 были добавлены к команде yum в основном методом проб и ошибок и некоторым сопоставлением с образцом из сообщений об ошибках CMake, но я не могу понять, как исправить эти последние ошибки:

-- Could not set up the appstream test. appstreamcli is missing.
CMake Error at /usr/lib64/cmake/KF5Archive/KF5ArchiveConfig.cmake:37 (include):
  include could not find load file:

    CMakeFindDependencyMacro
Call Stack (most recent call first):
  /usr/share/ECM/find-modules/FindKF5.cmake:74 (find_package)
  CMakeLists.txt:34 (find_package)


CMake Error at /usr/lib64/cmake/KF5Archive/KF5ArchiveConfig.cmake:38 (find_dependency):
  Unknown CMake command "find_dependency".
Call Stack (most recent call first):
  /usr/share/ECM/find-modules/FindKF5.cmake:74 (find_package)
  CMakeLists.txt:34 (find_package)

Это потому, что в CentOS 7 CMake (2.8.12.2) слишком старый? Или что-то другое?


person Lightness Races in Orbit    schedule 17.03.2018    source источник
comment
CMake 2.7.12.2 на самом деле слишком стар для почти любой функции, связанной с пакетами config / find. Похоже, для модуля CMakeFindDependencyMacro требуется как минимум версия 3.0.   -  person Tsyvarev    schedule 17.03.2018
comment
Моя ошибка - это 2.8.12.2 :)   -  person Lightness Races in Orbit    schedule 17.03.2018
comment
@Tsyvarev: Спасибо :) Перешли в ответ.   -  person Lightness Races in Orbit    schedule 18.03.2018


Ответы (1)


Да, CMake 2.8.12.2 слишком стар. Вместо этого используйте CMake 3:

yum install epel-release
yum install cmake3

(cd build && cmake3 .. && make && make install)
#                 ^

Теперь установка жалуется на KChart, но это отдельная проблема.


В конце концов, вот мои полные шаги:

yum install epel-release
yum install subversion git cmake3 tar wget
yum install boost boost-devel
yum install kdelibs-devel extra-cmake-modules \
   graphviz-devel kdepim-devel \
   qt5-qtsvg-devel qt5-qtxmlpatterns-devel \
   kf5-kparts-devel kf5-karchive-devel \
   kf5-kiconthemes-devel kf5-kdoctools-devel
git clone https://github.com/KDE/massif-visualizer
wget https://download.kde.org/stable/kgraphviewer/2.4.0/kgraphviewer-2.4.0.tar.xz
wget https://download.kde.org/stable/kdiagram/2.6.0/src/kdiagram-2.6.0.tar.xz
tar xf kgraphviewer-2.4.0.tar.xz
tar xf kdiagram-2.6.0.tar.xz

for DIR in kgraphviewer-2.4.0 kdiagram-2.6.0 massif-visualizer
do
   cd $DIR
   mkdir build
   (cd build && cmake3 .. && make && make install)
   cd -
done

Затем valgrind --tool=massif myApp и, наконец, massif-visualiser massif.out.<PID> из терминала внутри сеанса KDE.

person Lightness Races in Orbit    schedule 17.03.2018
comment
Вам также необходимо установить boost-devel (и, возможно, boost) - person Romário; 11.03.2020