Как я могу собрать KDE Dolphin из его исходного кода?

Я использую Ubuntu 15.04 x64.

Я клонировал репозиторий Dolphin из git: //anongit.kde.org/dolphin. Затем я приступил к созданию каталога:

mkdir build
cd build
cmake ..

Но когда я запускаю команду CMake, я получаю:

-- The C compiler identification is GNU 4.9.2
-- The CXX compiler identification is GNU 4.9.2
-- 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
-- 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
-- Looking for __GLIBC__
-- Looking for __GLIBC__ - found
-- Performing Test _OFFT_IS_64BIT
-- Performing Test _OFFT_IS_64BIT - Success
CMake Warning at /usr/share/ECM/find-modules/FindKF5.cmake:77 (find_package):
  Could not find a package configuration file provided by "KF5DocTools"
  (requested version 5.16.0) with any of the following names:

    KF5DocToolsConfig.cmake
    kf5doctools-config.cmake

  Add the installation prefix of "KF5DocTools" to CMAKE_PREFIX_PATH or set
  "KF5DocTools_DIR" to a directory containing one of the above files.  If
  "KF5DocTools" provides a separate development package or SDK, be sure it
  has been installed.
Call Stack (most recent call first):
  CMakeLists.txt:50 (find_package)


-- Could NOT find KF5DocTools: found neither KF5DocToolsConfig.cmake nor kf5doctools-config.cmake
CMake Warning at /usr/share/ECM/find-modules/FindKF5.cmake:77 (find_package):
  Could not find a package configuration file provided by "KF5Init"
  (requested version 5.16.0) with any of the following names:

    KF5InitConfig.cmake
    kf5init-config.cmake

  Add the installation prefix of "KF5Init" to CMAKE_PREFIX_PATH or set
  "KF5Init_DIR" to a directory containing one of the above files.  If
  "KF5Init" provides a separate development package or SDK, be sure it has
  been installed.
Call Stack (most recent call first):
  CMakeLists.txt:50 (find_package)


-- Could NOT find KF5Init: found neither KF5InitConfig.cmake nor kf5init-config.cmake
CMake Warning at /usr/share/ECM/find-modules/FindKF5.cmake:77 (find_package):
  Could not find a package configuration file provided by "KF5KCMUtils"
  (requested version 5.16.0) with any of the following names:

    KF5KCMUtilsConfig.cmake
    kf5kcmutils-config.cmake

  Add the installation prefix of "KF5KCMUtils" to CMAKE_PREFIX_PATH or set
  "KF5KCMUtils_DIR" to a directory containing one of the above files.  If
  "KF5KCMUtils" provides a separate development package or SDK, be sure it
  has been installed.
Call Stack (most recent call first):
  CMakeLists.txt:50 (find_package)


-- Could NOT find KF5KCMUtils: found neither KF5KCMUtilsConfig.cmake nor kf5kcmutils-config.cmake
CMake Warning at /usr/share/ECM/find-modules/FindKF5.cmake:77 (find_package):
  Could not find a package configuration file provided by "KF5NewStuff"
  (requested version 5.16.0) with any of the following names:

    KF5NewStuffConfig.cmake
    kf5newstuff-config.cmake

  Add the installation prefix of "KF5NewStuff" to CMAKE_PREFIX_PATH or set
  "KF5NewStuff_DIR" to a directory containing one of the above files.  If
  "KF5NewStuff" provides a separate development package or SDK, be sure it
  has been installed.
Call Stack (most recent call first):
  CMakeLists.txt:50 (find_package)


-- Could NOT find KF5NewStuff: found neither KF5NewStuffConfig.cmake nor kf5newstuff-config.cmake
CMake Warning at /usr/share/ECM/find-modules/FindKF5.cmake:77 (find_package):
  Could not find a package configuration file provided by "KF5CoreAddons"
  (requested version 5.16.0) with any of the following names:

    KF5CoreAddonsConfig.cmake
    kf5coreaddons-config.cmake

  Add the installation prefix of "KF5CoreAddons" to CMAKE_PREFIX_PATH or set
  "KF5CoreAddons_DIR" to a directory containing one of the above files.  If
  "KF5CoreAddons" provides a separate development package or SDK, be sure it
  has been installed.
Call Stack (most recent call first):
  CMakeLists.txt:50 (find_package)


-- Could NOT find KF5CoreAddons: found neither KF5CoreAddonsConfig.cmake nor kf5coreaddons-config.cmake
CMake Warning at /usr/share/ECM/find-modules/FindKF5.cmake:77 (find_package):
  Could not find a package configuration file provided by "KF5I18n"
  (requested version 5.16.0) with any of the following names:

    KF5I18nConfig.cmake
    kf5i18n-config.cmake

  Add the installation prefix of "KF5I18n" to CMAKE_PREFIX_PATH or set
  "KF5I18n_DIR" to a directory containing one of the above files.  If
  "KF5I18n" provides a separate development package or SDK, be sure it has
  been installed.
Call Stack (most recent call first):
  CMakeLists.txt:50 (find_package)


-- Could NOT find KF5I18n: found neither KF5I18nConfig.cmake nor kf5i18n-config.cmake
CMake Warning at /usr/share/ECM/find-modules/FindKF5.cmake:77 (find_package):
  Could not find a package configuration file provided by "KF5DBusAddons"
  (requested version 5.16.0) with any of the following names:

    KF5DBusAddonsConfig.cmake
    kf5dbusaddons-config.cmake

  Add the installation prefix of "KF5DBusAddons" to CMAKE_PREFIX_PATH or set
  "KF5DBusAddons_DIR" to a directory containing one of the above files.  If
  "KF5DBusAddons" provides a separate development package or SDK, be sure it
  has been installed.
Call Stack (most recent call first):
  CMakeLists.txt:50 (find_package)


-- Could NOT find KF5DBusAddons: found neither KF5DBusAddonsConfig.cmake nor kf5dbusaddons-config.cmake
CMake Warning at /usr/share/ECM/find-modules/FindKF5.cmake:77 (find_package):
  Could not find a package configuration file provided by "KF5Bookmarks"
  (requested version 5.16.0) with any of the following names:

    KF5BookmarksConfig.cmake
    kf5bookmarks-config.cmake

  Add the installation prefix of "KF5Bookmarks" to CMAKE_PREFIX_PATH or set
  "KF5Bookmarks_DIR" to a directory containing one of the above files.  If
  "KF5Bookmarks" provides a separate development package or SDK, be sure it
  has been installed.
Call Stack (most recent call first):
  CMakeLists.txt:50 (find_package)


-- Could NOT find KF5Bookmarks: found neither KF5BookmarksConfig.cmake nor kf5bookmarks-config.cmake
CMake Warning at /usr/share/ECM/find-modules/FindKF5.cmake:77 (find_package):
  Could not find a package configuration file provided by "KF5Config"
  (requested version 5.16.0) with any of the following names:

    KF5ConfigConfig.cmake
    kf5config-config.cmake

  Add the installation prefix of "KF5Config" to CMAKE_PREFIX_PATH or set
  "KF5Config_DIR" to a directory containing one of the above files.  If
  "KF5Config" provides a separate development package or SDK, be sure it has
  been installed.
Call Stack (most recent call first):
  CMakeLists.txt:50 (find_package)


-- Could NOT find KF5Config: found neither KF5ConfigConfig.cmake nor kf5config-config.cmake
CMake Warning at /usr/share/ECM/find-modules/FindKF5.cmake:77 (find_package):
  Could not find a package configuration file provided by "KF5KIO" (requested
  version 5.16.0) with any of the following names:

    KF5KIOConfig.cmake
    kf5kio-config.cmake

  Add the installation prefix of "KF5KIO" to CMAKE_PREFIX_PATH or set
  "KF5KIO_DIR" to a directory containing one of the above files.  If "KF5KIO"
  provides a separate development package or SDK, be sure it has been
  installed.
Call Stack (most recent call first):
  CMakeLists.txt:50 (find_package)


-- Could NOT find KF5KIO: found neither KF5KIOConfig.cmake nor kf5kio-config.cmake
CMake Warning at /usr/share/ECM/find-modules/FindKF5.cmake:77 (find_package):
  Could not find a package configuration file provided by "KF5Parts"
  (requested version 5.16.0) with any of the following names:

    KF5PartsConfig.cmake
    kf5parts-config.cmake

  Add the installation prefix of "KF5Parts" to CMAKE_PREFIX_PATH or set
  "KF5Parts_DIR" to a directory containing one of the above files.  If
  "KF5Parts" provides a separate development package or SDK, be sure it has
  been installed.
Call Stack (most recent call first):
  CMakeLists.txt:50 (find_package)


-- Could NOT find KF5Parts: found neither KF5PartsConfig.cmake nor kf5parts-config.cmake
CMake Warning at /usr/share/ECM/find-modules/FindKF5.cmake:77 (find_package):
  Could not find a package configuration file provided by "KF5Solid"
  (requested version 5.16.0) with any of the following names:

    KF5SolidConfig.cmake
    kf5solid-config.cmake

  Add the installation prefix of "KF5Solid" to CMAKE_PREFIX_PATH or set
  "KF5Solid_DIR" to a directory containing one of the above files.  If
  "KF5Solid" provides a separate development package or SDK, be sure it has
  been installed.
Call Stack (most recent call first):
  CMakeLists.txt:50 (find_package)


-- Could NOT find KF5Solid: found neither KF5SolidConfig.cmake nor kf5solid-config.cmake
CMake Warning at /usr/share/ECM/find-modules/FindKF5.cmake:77 (find_package):
  Could not find a package configuration file provided by "KF5IconThemes"
  (requested version 5.16.0) with any of the following names:

    KF5IconThemesConfig.cmake
    kf5iconthemes-config.cmake

  Add the installation prefix of "KF5IconThemes" to CMAKE_PREFIX_PATH or set
  "KF5IconThemes_DIR" to a directory containing one of the above files.  If
  "KF5IconThemes" provides a separate development package or SDK, be sure it
  has been installed.
Call Stack (most recent call first):
  CMakeLists.txt:50 (find_package)


-- Could NOT find KF5IconThemes: found neither KF5IconThemesConfig.cmake nor kf5iconthemes-config.cmake
CMake Warning at /usr/share/ECM/find-modules/FindKF5.cmake:77 (find_package):
  Could not find a package configuration file provided by "KF5Completion"
  (requested version 5.16.0) with any of the following names:

    KF5CompletionConfig.cmake
    kf5completion-config.cmake

  Add the installation prefix of "KF5Completion" to CMAKE_PREFIX_PATH or set
  "KF5Completion_DIR" to a directory containing one of the above files.  If
  "KF5Completion" provides a separate development package or SDK, be sure it
  has been installed.
Call Stack (most recent call first):
  CMakeLists.txt:50 (find_package)


-- Could NOT find KF5Completion: found neither KF5CompletionConfig.cmake nor kf5completion-config.cmake
CMake Warning at /usr/share/ECM/find-modules/FindKF5.cmake:77 (find_package):
  Could not find a package configuration file provided by "KF5TextWidgets"
  (requested version 5.16.0) with any of the following names:

    KF5TextWidgetsConfig.cmake
    kf5textwidgets-config.cmake

  Add the installation prefix of "KF5TextWidgets" to CMAKE_PREFIX_PATH or set
  "KF5TextWidgets_DIR" to a directory containing one of the above files.  If
  "KF5TextWidgets" provides a separate development package or SDK, be sure it
  has been installed.
Call Stack (most recent call first):
  CMakeLists.txt:50 (find_package)


-- Could NOT find KF5TextWidgets: found neither KF5TextWidgetsConfig.cmake nor kf5textwidgets-config.cmake
CMake Warning at /usr/share/ECM/find-modules/FindKF5.cmake:77 (find_package):
  Could not find a package configuration file provided by "KF5WindowSystem"
  (requested version 5.16.0) with any of the following names:

    KF5WindowSystemConfig.cmake
    kf5windowsystem-config.cmake

  Add the installation prefix of "KF5WindowSystem" to CMAKE_PREFIX_PATH or
  set "KF5WindowSystem_DIR" to a directory containing one of the above files.
  If "KF5WindowSystem" provides a separate development package or SDK, be
  sure it has been installed.
Call Stack (most recent call first):
  CMakeLists.txt:50 (find_package)


-- Could NOT find KF5WindowSystem: found neither KF5WindowSystemConfig.cmake nor kf5windowsystem-config.cmake
CMake Warning at /usr/share/ECM/find-modules/FindKF5.cmake:77 (find_package):
  Could not find a package configuration file provided by "KF5Notifications"
  (requested version 5.16.0) with any of the following names:

    KF5NotificationsConfig.cmake
    kf5notifications-config.cmake

  Add the installation prefix of "KF5Notifications" to CMAKE_PREFIX_PATH or
  set "KF5Notifications_DIR" to a directory containing one of the above
  files.  If "KF5Notifications" provides a separate development package or
  SDK, be sure it has been installed.
Call Stack (most recent call first):
  CMakeLists.txt:50 (find_package)


-- Could NOT find KF5Notifications: found neither KF5NotificationsConfig.cmake nor kf5notifications-config.cmake
CMake Warning at /usr/share/ECM/find-modules/FindKF5.cmake:77 (find_package):
  Could not find a package configuration file provided by "KF5Crash"
  (requested version 5.16.0) with any of the following names:

    KF5CrashConfig.cmake
    kf5crash-config.cmake

  Add the installation prefix of "KF5Crash" to CMAKE_PREFIX_PATH or set
  "KF5Crash_DIR" to a directory containing one of the above files.  If
  "KF5Crash" provides a separate development package or SDK, be sure it has
  been installed.
Call Stack (most recent call first):
  CMakeLists.txt:50 (find_package)


-- Could NOT find KF5Crash: found neither KF5CrashConfig.cmake nor kf5crash-config.cmake
CMake Error at /usr/share/cmake-3.0/Modules/FindPackageHandleStandardArgs.cmake:136 (message):
  Could NOT find KF5 (missing: DocTools Init KCMUtils NewStuff CoreAddons
  I18n DBusAddons Bookmarks Config KIO Parts Solid IconThemes Completion
  TextWidgets WindowSystem Notifications Crash) (Required is at least version
  "5.16.0")
Call Stack (most recent call first):
  /usr/share/cmake-3.0/Modules/FindPackageHandleStandardArgs.cmake:343 (_FPHSA_FAILURE_MESSAGE)
  /usr/share/ECM/find-modules/FindKF5.cmake:113 (find_package_handle_standard_args)
  CMakeLists.txt:50 (find_package)


-- Configuring incomplete, errors occurred!
See also "/home/nic/kde/dolphin/build/CMakeFiles/CMakeOutput.log".

Похоже, я скучаю по KDE Framework Libs. Но я не могу найти способ установить их на свой компьютер. Как мне начать собирать Dolphin из его исходного кода для целей разработки?

1 ответ

Решение

Использование kdesrc-build построить Dolphin и его зависимости: https://community.kde.org/Frameworks/Building

Настройте это и запустите kdesrc-build --include-dependencies dolphin

К сожалению, для Ubuntu 15.04 библиотеки KDE Frameworks пока недоступны (только через PPA).

Для всех, кто хочет исправить ошибки CMake следующего типа:

Could not find a package configuration file provided by "KF5DocTools"
Could not find a package configuration file provided by "KF5Init"
Could not find a package configuration file provided by "KF5KCMUtils"
...

Эти и подобные ошибки, содержащие "KF5…", указывают на то, что CMake не может найти пакеты с файлами заголовков KDE5. В Ubuntu их можно установить с помощью:

sudo apt libkf5*-dev kirigami2-dev
Другие вопросы по тегам