柯南+ Cmake.gui + Visual Studio = 100%一无所有

问题描述

因此,我正在Qt Creator中运行一个项目,该项目相对来说还可以,我需要生成一些protobuf文件链接到它们。所以我用了柯南:

# conan
if(NOT EXISTS "${CMAKE_BINARY_DIR}/conan.cmake")
    message(STATUS "Downloading conan.cmake from https://github.com/conan-io/cmake-conan")
    file(DOWNLOAD "https://raw.githubusercontent.com/conan-io/cmake-conan/master/conan.cmake" "${CMAKE_BINARY_DIR}/conan.cmake")
endif()
include(${CMAKE_BINARY_DIR}/conan.cmake)

conan_cmake_run(CONANFILE conanfile.txt
    BASIC_SETUP
    CMAKE_TARGETS
    BUILD missing
    )

然后

find_package(protobuf       required)
PROTOBUF_GENERATE_CPP(proto_h proto_c ${proto_files})

,然后将它们添加到“ add_executable”中。 一切正常。在我不得不将其移植到Visual Studio之前,在Visual Studio中未生成任何文件,而且似乎没有添加与Protobuf生成相关的任何自定义生成步骤。 我不明白问题出在哪里。另外,CmakeGui出于某种原因无法找到与protobuf相关的认变量(Protobuf_LIBRARY_DEBUG-NOTFOUND等),但仍未配置任何错误(并且PROTOBUF_GENERATE_CPP为我提供了添加可执行文件文件名,并且它不发誓它可以找不到它们=它应该已经找到要在其原型生成任务中使用的协议目标。

因此,在这一点上,我没有任何想法,因此感到沮丧,因为看来我不得不求助于protobuf手动下载/安装/搜索,这可能甚至行不通=( 有人可以说出为什么会发生这种情况吗?为什么QtCreator能够完美地运行CMake脚本,而QtCreator却无法通过同一CMake GUI生成Visual Studio文件呢?

更新:奇怪的是,在Visual Studio中打开CmakeLists并使用x64-Configuration之后,一切正常。虽然我必须手动键入CMAKE_PREFIX_PATH 这是否意味着CmakeGui不能很好地生成

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)