【问题标题】:CMake Error: mismatch for the compiler version between your conan profileCMake 错误:您的柯南配置文件之间的编译器版本不匹配
【发布时间】:2021-01-07 08:23:48
【问题描述】:

我在 MacOS 上。

这是我的错误:

build/conanbuildinfo.cmake:625 处的 CMake 错误(消息): 检测到您的柯南配置文件之间的编译器版本不匹配 设置和 CMake:

您的柯南配置文件中指定的编译器版本:11.0

在 CMake 中检测到的编译器版本:12.0

请检查您的柯南个人资料设置(柯南个人资料显示 [default|your_profile_name])

这是我的 cmakefile:

   project(Babel)
cmake_minimum_required(VERSION 2.8.12)
add_definitions("-fPIC")

include(${CMAKE_BINARY_DIR}/conanbuildinfo.cmake)
conan_basic_setup()

find_package(Qt5Widgets CONFIG REQUIRED)

file(GLOB_RECURSE BABEL_SRC PATH ./sources/*.cpp)

include_directories(${CMAKE_INCLUDE_PATH})
add_executable(babel ${BABEL_SRC})
target_link_libraries(babel ${CONAN_LIBS} Qt5::Widgets)

谢谢。

【问题讨论】:

    标签: c++ cmake conan


    【解决方案1】:

    Apple-clang 最近更新到 12.0 版,但您之前创建的默认配置文件仍包含 11.0 版。

    这个错误很好,它可以防止您更改编译器版本并且没有意识到二进制文件会有所不同。

    您可以更新您的默认配置文件,转到您的用户主页~/.conan/profiles/default 并将compiler.version=11 更改为compiler.version=12

    如果您使用的是早于 1.29.2 的柯南版本,则需要升级,因为柯南 1.29.2 还在默认设置中的可用版本中添加了12(您可以在~/.conan/settings.yml 中查看此文件。编辑此设置文件并将版本12 手动添加到apple-clang 版本也适用于这种情况。

    【讨论】:

    • 我故意通过自制软件安装了 LLVM 和 clang 11.1.0,因为 Apple clang 不支持 Address Sanitizer 和 Leak Detector。我将如何调整我的 v11 应该用于构建依赖项的设置?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-07-01
    • 1970-01-01
    • 2021-11-14
    • 2023-03-11
    相关资源
    最近更新 更多