cmake KDevelop Python支援无法编译

suzh9iv8  于 2022-12-13  发布在  Python
关注(0)|答案(1)|浏览(165)

我已经从dnf安装了kdevelop和它所有的套件,但是它们没有从https://invent.kde.org/kdevelop/kdev-python安装kdev-python。所以我试着从原始码建置。我有所有的相依性,但是当我输入命令'cmake..'时,我得到错误。我已经使用dnf安装了所有的相依性。我也安装了python3。我正在遵循储存库的INSTALL档案中的指示。
以下是命令cmake .. -DCMAKE_BUILD_TYPE=debug -DKDE4_BUILD_TESTS=true的输出:-

-- The following OPTIONAL packages have been found:

 * PythonInterp (required version >= 3.11)

-- The following REQUIRED packages have been found:

 * ECM (required version >= 5.78.0)
 * PythonLibs (required version == 3.11)
 * Qt5Test
 * Qt5 (required version >= 5.15.0)
 * KF5 (required version >= 5.78.0)
 * KF5Service (required version >= 5.100.0)
 * KF5Completion (required version >= 5.100.0)
 * KF5ItemViews (required version >= 5.100.0)
 * KF5JobWidgets (required version >= 5.100.0)
 * KF5Solid (required version >= 5.100.0)
 * KF5Sonnet (required version >= 5.100.0)
 * Gettext
 * KF5I18n (required version >= 5.100.0)
 * KF5TextWidgets (required version >= 5.100.0)
 * KF5CoreAddons (required version >= 5.100.0)
 * KF5Auth (required version >= 5.100.0)
 * KF5Codecs (required version >= 5.100.0)
 * Qt5Widgets (required version >= 5.15.2)
 * KF5WidgetsAddons (required version >= 5.100.0)
 * KF5ConfigWidgets (required version >= 5.100.0)
 * KF5XmlGui (required version >= 5.100.0)
 * KF5Parts (required version >= 5.100.0)
 * Qt5Gui (required version >= 5.15.2)
 * KF5SyntaxHighlighting (required version >= 5.100.0)
 * KF5TextEditor (required version >= 5.78.0)
 * Qt5Core (required version >= 5.15.2)
 * KF5ThreadWeaver (required version >= 5.78.0)
 * KDevPlatform (required version >= 5.7)
 * KDevelop (required version >= 5.7)

-- Configuring done
CMake Error at /usr/share/ECM/modules/ECMAddTests.cmake:97 (target_link_libraries):
  Target "pyasttest" links to:

    KDev::Tests

  but the target was not found.  Possible reasons include:

    * There is a typo in the target name.
    * A find_package call is missing for an IMPORTED target.
    * An ALIAS target is missing.

Call Stack (most recent call first):
  parser/tests/CMakeLists.txt:4 (ecm_add_test)

CMake Error at duchain/tests/CMakeLists.txt:17 (target_link_libraries):
  Target "pyduchaintest" links to:

    KDev::Tests

  but the target was not found.  Possible reasons include:

    * There is a typo in the target name.
    * A find_package call is missing for an IMPORTED target.
    * An ALIAS target is missing.


CMake Error at duchain/tests/CMakeLists.txt:25 (target_link_libraries):
  Target "duchainbench" links to:

    KDev::Tests

  but the target was not found.  Possible reasons include:

    * There is a typo in the target name.
    * A find_package call is missing for an IMPORTED target.
    * An ALIAS target is missing.


CMake Error at /usr/share/ECM/modules/ECMAddTests.cmake:97 (target_link_libraries):
  Target "pycompletiontest" links to:

    KDev::Tests

  but the target was not found.  Possible reasons include:

    * There is a typo in the target name.
    * A find_package call is missing for an IMPORTED target.
    * An ALIAS target is missing.

Call Stack (most recent call first):
  codecompletion/tests/CMakeLists.txt:5 (ecm_add_test)

-- Generating done
CMake Generate step failed.  Build files cannot be regenerated correctly.
kqlmhetl

kqlmhetl1#

这是由于您的发行版(Fedora?)在构建KDevelop时,-DBUILD_TESTING=OFF禁用了它的自检--上游不推荐的非标准配置。kdev-python依赖于KDevelop的自检代码来进行自己的自检。
如果你还没有安装kdevelop-develkdevelop-libs,安装它们可能会有帮助,它们已经存在了,但是我对Fedora打包不熟悉。
否则,您可以通过构建kdev-python并依次禁用其测试来解决此问题:cmake .. -DCMAKE_BUILD_TYPE=debug -DBUILD_TESTING=OFF .
一个更好的解决方案是在构建kdev-python之前,在本地构建和安装KDevelop,而不使用-DBUILD_TESTING=OFF
我不知道你在哪里找到的-DKDE4_BUILD_TESTS=true,但不要使用它,它是过时的,不会帮助你。

相关问题