问题标签 [cmake-gui]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
645 浏览

c++ - 构建Boost单元测试时出现cmake错误

我正在完成本教程,在 cmake 3.0.2 生成的 c++ 项目中使用 VS2012。 http://help.exercism.io/getting-started-with-cpp.html

我有一系列提升单元测试来检查在给定输入时是否返回正确的消息。大多数测试都有效,但奇怪的是,有些测试会导致构建错误。

在此处输入图像描述

//bob.h

//bob.cpp

//bob_test.cpp

0 投票
1 回答
406 浏览

c++ - 让自定义 Find*.cmake 文件根据 Visual Studio 构建类型(调试/发布)查找不同的库

我正在一个项目中创建一些 C++ 库(VS 术语中的解决方案),需要由其他两个项目使用。为此,我创建了一个 FindDQSAnalyticsInfra.cmake 文件,如下所示:

该文件工作正常。问题是在此文件中使用的 find_library 命令中,我将路径硬编码为 ${DQSINFRA_ROOT}/lib/Release。这意味着我不能使用此文件链接到调试版本(我必须手动更改文件以使用 ${DQSINFRA_ROOT}/lib/Debug)。关于如何解决这个问题的任何想法。谢谢。

0 投票
1 回答
113 浏览

caching - 在不同的构建设置之间切换

抱歉标题含糊不清,我不知道如何正确表达。我想编写一个 cmake 脚本,允许使用不同的位宽设置​​(强制 32 位、强制 64 位或本机位宽)和静态链接构建目标。我想出了如何在每种条件下设置构建,到目前为止,我正在使用 cmake 选项在不同的设置之间切换。

我的问题是使用 ccmake 或在命令行上更改这些构建选项之一还需要寻找新的库路径。由于这些路径被缓存,我目前在更改位宽时必须删除缓存。这样,用户还可以放松与位宽和静态链接无关的选项的所有其他设置。

有没有通用的方法来处理这个?

0 投票
1 回答
1616 浏览

python-2.7 - 在 Opencv3.0.0 中找不到 CMake 的 python 库

尝试构建 Opencv3.0.0 (dev),cmake 找到二进制和 python 2 位置,但无法包含 python 库。

我使用 cmake-gui 生成生成文件。在配置 cmake 时,它​​会提供这条信息以及其他各种信息:

--

-- Python 2:

-- 解释器:/usr/bin/python2.7 (ver 2.7.6)

-- 图书馆:否

-- numpy: /usr/lib/python2.7/dist-packages/numpy/core/include (ver 1.8.2)

-- 包路径:lib/python2.7/dist-packages

--

-- Python 3:

-- 解释器:/usr/bin/python3.4 (ver 3.4)

我已经交叉检查并且我提供的 python2 的输入都是正确的(作为附件包含在内):( 在此处输入图像描述 在进一步阅读之前请看一下图像)

所以,现在我想知道这是架构问题还是版本问题(与不同版本的opencv、python、cmake的兼容性)

我目前使用的版本是: opencv:3.0.0-dev

python2:2.7.6

python3:3.4.0

制作:2.8.12.2

系统:ubuntu 14.04(amd 架构,64 位)

Linux 内核版本:Linux 版本 3.13.0-27-generic (buildd@akateko) (gcc 版本 4.8.2 (Ubuntu 4.8.2-19ubuntu1)) #50-Ubuntu SMP Thu May 15 18:06:16 UTC 2014

我在这一点上卡住了要做什么。有人可以将我推向正确的方向吗?

0 投票
1 回答
316 浏览

cmake - find_package 找不到库时在 cmake-gui 中选择路径

find_package用来查找我的项目所需的依赖项,如下所示:

但是,我想知道当find_package失败时如何在 cmake-gui 中为用户手动设置选项。

0 投票
1 回答
1132 浏览

c++ - CMake FIND_LIBRARY 适用于 Windows 但不适用于 OS X

在 Windows 中的 Cmake 上运行的相同代码找到了库,但在 mac 上找不到它们。代码找到 Include 目录很好,只是没有找到库

这是 Cmake 输出的屏幕 在此处输入图像描述

这是目录结构的屏幕 在此处输入图像描述

这是 CMakeLists.txt

0 投票
0 回答
3855 浏览

qt - 如何在 fedora 20 中设置 Qt5Config.cmake 路径?

我已经安装了 Qt5。在应用程序的构建文件上运行 cmake 时出现以下错误。CMakeLists.txt:12 (find_package) 处的 CMake 错误:通过在 CMAKE_MODULE_PATH 中未提供“FindQt5.cmake”,该项目已要求 CMake 查找“Qt5”提供的包配置文件,但 CMake 没有找到。

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

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

我了解我需要指定路径。任何 1 都可以帮助我了解我需要编写的确切命令以及我需要在哪个文件中更改它吗?我是新手,所以请详细回答,不要引用任何链接。我可以找到 Qt5Config.cmake 的位置。

提前致谢。

0 投票
1 回答
361 浏览

c++ - 错误 LNK2019:外部符号

我是elastix的新手,一开始就卡住了。我正在尝试用 C++ 编译一个非常基本的程序,它将对使用 elastix 库进行实例化。当我试图编译程序时,我得到了一个链接器错误:

错误 LNK2019: 外部符号 "public: virtual __cdecl elastix ELASTIX :: :: ~ ELASTIX (void)" (?? 1ELASTIX @ elastix FALU@@@XZ) unresolved in the "public function: virtual void * __cdecl elastix eLASTIX: : :: `标量删除析构函数'(unsigned int)" (?? _ @ elastix GELASTIX UEAAPEAXI@@@Z)

我做了一些谷歌搜索,发现它实际上是一个流行的链接器问题:请参阅这个主题 和这个 以及这个特定的 elastix 邮件链。我尝试使用这些链接修复它,但没有成功。我想知道你们是否可以帮助我。您可以在下面找到我的源文件(CMakeList.txt 和 C++ 代码)和一些附加信息:我运行 windows 7,Cmake 版本是 3.0.2,ITK 版本是 4.6,elastix 版本是 4.7 和 Microsoft VS 2008。提前致谢

CmakeList.txt # 使用来自外部项目的 elastix 代码的示例项目。项目(elxExternalProject)

C++ 代码

0 投票
1 回答
223 浏览

visual-studio - Visual Studio 2013 从 CMake 链接 VS 2012 库生成的解决方案

我使用 CMake 3.0.2 生成了一个 Visual Studio 2013 解决方案。编译时会出现类似这样的错误:

MSVCP110D.dll 和 Visual Studio 2013

我无法理解这一点,工具集是 v120 那么为什么它链接 v110 库?我已经在 CMake IRC 频道中询问过,但他们无法帮助我。无法调试程序,因为可再发行组件不包括调试 dll。

编辑:这是我从教程 cmake zip 派生的 Ogre3D 应用程序。我几乎没有接触过 CMakeLists.txt,只设置了 REQUIRED 以查找 boost 并将 boost-system 添加到在安装期间复制的库中。

0 投票
1 回答
170 浏览

cmake - 为什么 add_dependencies 将第三方库添加到我的可执行项目中?

我有以下 CMake 项目:

testexe:这取决于共享库testlib

testlib:使用第三方 DLL 的共享库,比如说test3rd.lib

生成解决方案后,我发现一切都很好,除了testexerequirestest3rd.libtestlib,但我的测试应该只依赖于testlib.

这种额外依赖的原因是什么?