CMake构建后如何在c ++库中运行示例

Posted

技术标签:

【中文标题】CMake构建后如何在c ++库中运行示例【英文标题】:How to run an example in c++ library after CMake build 【发布时间】:2014-07-02 00:06:48 【问题描述】:

我是 C++ 编程的新手。我需要研究图书馆g20 的工作。我能够使用

成功构建库
cmake

Ubuntu 中的命令。它在 build 文件夹中创建了与 g2o 源文件夹结构相同的文件夹结构,并在每个子文件夹中创建了一个 make 文件。

但是在 cmake 之后,我如何使用该库执行示例程序?任何人都可以简单地解释一下这些步骤。

或者如何在不使用 cmake 的情况下使用该库?

我已经搜索了很长时间,但无法弄清楚如何去做。该库在文件夹 g2o/examples/ 中提供了一些示例。我什至无法执行它们。我该如何执行它们?请帮忙。

【问题讨论】:

【参考方案1】:

cmake 是一个构建工具,它只负责找到正确的编译器来构建库,安装它,并运行测试程序(如果作者设置的话)。

运行make install安装库,默认为/usr/local前缀(表示库默认安装在/usr/local/lib,可执行文件默认安装在/usr/local/bin)。您可以通过更改CMAKE_INSTALL_PREFIX:PATH=/usr/local 行来编辑CMakeCache.txt 以更改安装目录。安装后,cmake 就完成了它的工作。

我在$g2o_source_root/bin 目录中看到了一些演示。只需先输入./bin/sba_democd bin 然后./sba_demo 即可执行它们。

您可以像使用其他常规库一样在代码中使用该库。将代码写入名为yourcode.c 的文件中,并使用gcc -llibraryname yourcode.c 进行编译。

【讨论】:

感谢您的回答。这真的很有帮助。我可以按照相同的步骤在 Windows 中运行它吗? 嗯,这取决于你的生成器(编译器)。将make install替换为cmake --build . --target install,并在我上面的答案中将UNIX目录替换为Windows标准目录(应该是X:\Program files),你应该没问题。

以上是关于CMake构建后如何在c ++库中运行示例的主要内容,如果未能解决你的问题,请参考以下文章

kotlin 升级到 1.6.0 后如何在 Room Dao 中使用挂起修饰符?

如何用C语言运行一个bat文件

CMake项目结构:如何正确地将库合并在一起并将它们包含在多个可执行文件中

如何在调试构建期间使 Visual Studio (2019/2022) 链接到正常的运行时库?

如何在 Windows 10 上使用 Visual Studio 2015 x64 配置和构建 Tesseract OCR C++

如何在 c c++ 混合生成文件中为 c 对象添加附加规则?