0


我是 Cmake 新手并使用它来构建项目。我以前没有使用过这个工具,因此对它的工作原理知之甚少。
我正在尝试运行 ArUco 库的示例。但是 ArUco 库提供的 README 建议使用 Cmake 来运行它们。我有 Windows 8.1 和 Visual Studio 2013,我还下载并安装了 Cmake3.4.0 。
安装后,我搜索了有关 Cmake 的示例或教程,并找到了一些视频教程,展示了如何使用 cmake 编译程序。但是,虽然遵循相同的步骤,但我遇到了错误。错误如图

我浏览了论坛上发布的不同问题,但没有找到答案。我不确定是否需要设置环境变量和路径。对此的一些建议将非常有帮助。
非常感谢你的帮助。

错误:

C 编译器标识为 MSVC 18.0.40629.0
CXX 编译器标识为 MSVC 18.0.40629.0

检查工作 C 编译器使用:Visual Studio 12 2013
检查工作 C 编译器使用:Visual Studio 12 2013 -- 工作
检测 C 编译器 ABI 信息
检测 C编译器 ABI 信息 - 完成
检查工作 CXX 编译器使用:Visual Studio 12 2013
检查工作 CXX 编译器使用:Visual Studio 12 2013 - 工作
检测 CXX 编译器 ABI 信息
检测 CXX 编译器 ABI 信息 - 完成
检测 CXX 编译功能
检测 CXX 编译功能-
在 CMakeLists.txt:5 (find_package) 完成 CMake 错误:
通过在 CMAKE_MODULE_PATH 中不提供“Findaruco.cmake”,该项目
要求 CMake 查找“aruco”提供的包配置文件,但
CMake 没有找到。

找不到由“aruco”提供的具有以下任何名称的包配置文件:

arucoConfig.cmake<br/>
aruco-config.cmake<br/>

将“aruco”的安装前缀添加到 CMAKE_PREFIX_PATH 或将“aruco_DIR”设置为包含上述文件之一的目录。如果“aruco”提供单独的开发包或SDK,请确保已安装。

配置不完整,出现错误!
另请参见“E:/../aruco_testproject/build/CMakeFiles/CMakeOutput.log”。

4

2 回答 2

1

我在 Mac 上遇到了同样的问题,希望 Windows 用户也觉得这很有用。

很可能您没有安装 aruco。转到您下载的 aruco 源文件夹(即 ~/Downloads/aruco-2.0.14)并运行以下命令 cmake . make make install

然后您将能够构建 aruco_testproject cmake . make 希望这会有所帮助

于 2016-12-24T08:26:01.283 回答
0

实际上它很清楚出了什么问题。CMake 找不到某些软件包。

快速而肮脏的解决方案

一种解决方案是按照错误消息的建议进行操作:

进入特定CMakeLists.txt文件并aruco_Dir像这样设置变量

set( auruco_Dir /PATH/TO/ARUCO/WHERE/AURUCOCONFIG.CMAKE/IS/LOCATED/AS/WELL )

真正的方式

更好的方法是Findaruco.cmakeCMAKE_MODULE_PATH. 这被称为模块,因为它集成了 CMake 的find_package机制(https://cmake.org/cmake/help/v3.0/command/find_package.html,最后访问时间为 11.12.2015)并提供有关在哪里可以找到的中心信息aruco在您的文件系统中。(Aruco这里只是示例。任何其他模块也是如此)

这有什么用,为什么我需要find_package这些模块

答案很简单。您只有一个中心位置需要管理,而不是很多。想象一下你的 pacjage 的位置发生了变化。你想修复每个CMakeLists.txt引用这个包的文件吗?它就像基本的编程范例

  • 不要重复自己

  • 不要硬编码任何东西

于 2015-12-11T15:26:51.147 回答