问题标签 [cmake]

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.

Filter by
Sorted by
Tagged with
0 投票
13 回答
78576 浏览

在 CMake 中使用预编译的头文件

我在网上看到了一些(旧)帖子,这些帖子是关于在 CMake 中将一些对预编译头文件的支持结合在一起的。他们似乎都有点到处都是,每个人都有自己的做事方式。目前最好的方法是什么?

0 投票
2 回答
5955 浏览

如何自动将头文件添加到项目中?

我将如何拥有一个 CMake 构建系统,它现在使用AUX_SOURCE_DIRECTORY扫描源文件,也在同一目录中扫描头文件,最好使用类似的命令?

我还没有在文档中找到一个简单的方法来做到这一点,所以我现在有一个糟糕的 bash 脚本来后处理我的(CodeBlocks)项目文件......

0 投票
6 回答
2086 浏览

QAbstractTableModel继承vtable问题

这是 qt 的另一个问题:我扩展了 QAbstractTableModel,但出现编译错误(我正在使用 cmake)

当我编译时,我得到:

TableModel': /partd/unusedsvn/unusedpkg/iface/tableModel.cpp:4: undefined reference toTableModel' /partd/unusedsvn/unusedpkg/iface/tableModel.cpp:4 的函数 vtable 中:未定义引用vtable for TableModel' collect2: ld returned 1 exit status

有人遇到同样的问题吗??

0 投票
7 回答
152192 浏览

使用 CMake 生成 Visual Studio C++ 项目文件

我正在开发一个开源 C++ 项目,用于在 Linux 和 Windows 上编译的代码。我使用 CMake 在 Linux 上构建代码。为了便于开发设置和政治原因,我必须坚持使用 Windows 上的 Visual Studio 项目文件/编辑器(例如,我无法切换到Code::Blocks)。我看到了使用 CMake 生成 Visual Studio 文件的说明,如下所示

您之前是否使用过 CMake 生成 Visual Studio 文件?你的经历如何?假设我想在我的项目中添加一个新文件。这个工作流程是什么?

0 投票
1 回答
15852 浏览

从 make 调用 cmake 来创建 Makefile?

cmake用来构建我的项目。对于 UNIX,我想make从我的项目的根目录键入,并cmake调用以创建正确的 Makefile(如果它们尚不存在),然后构建我的项目。我希望隐藏cmake“内部”文件(目标文件、cmake内部 Makefile 等)(例如放在.build目录中),这样它就不会弄乱我的项目目录。

我的项目有几个子项目(特别是一个库、一个用户可执行文件和一个单元测试可执行文件)。我希望make每个子项目的 Makefiles(即我键入并且发生这种情况)执行cmake(如上所述)并仅构建该子项目(具有依赖关系,因此如果需要,该库将从可执行文件的 Makefiles 构建)。生成的二进制文件(.so 库或可执行文件)应位于子项目的目录中。

我制作了一个 Makefile,它在主要项目上做得有点好,虽然感觉有点 hackish。我无法使用它构建特定的目标,因为我的 Makefile 只是makecmake的构建目录中调用。

请注意,因为该库是唯一的依赖项(并且可能不需要手动构建,并且因为我很懒),所以我在 Makefile 中省略了它。

如果有帮助,这是我的项目结构(如果这是“错误的”,请告诉我——我还在学习cmake):

如果您还没有理解,我基本上是在寻找一种方法来构建项目和子项目,就好像cmake不存在一样:好像我的项目只包含 Makefile。这可以做到吗?解决方案是优雅的还是混乱的?我应该尝试做其他事情吗?

谢谢!

0 投票
8 回答
4291 浏览

最佳跨平台 C++/QT4 开发环境

我想使用 C++ 和 QT4 开发跨平台应用程序。我在 Linux 和 Windows (MinGW) 上都编码。

目前我正在使用 KDevelop,它是 QMake 集成。在 Windows 上,我正在尝试带有 QT 集成插件的 Eclipse。然而,在两个系统上移动源和更新配置文件/IDE 项目文件是乏味的。

我正在研究使用 CMake,因为它可以生成 Makefile、KDevelop 项目文件和 Eclipse 项目文件。

你怎么看?你用什么来进行这种开发?

0 投票
4 回答
4298 浏览

CMake 中的任何方式都需要 GCC 版本 4+?

我正在使用 GCC v4+ 中提供的一些功能,并希望 CMake 找到 GCC v4 编译器,如果找不到,则返回一个错误,说明需要 GCC v4。

有人对如何做这样的事情有任何模块/想法吗?

谢谢。

0 投票
2 回答
1082 浏览

构建系统和可移植性

我想知道如何制作一个可移植的构建系统(一步一步),我目前使用 cmake,因为它一开始很容易设置,只有一个拱目标,但现在我必须打包我正在开发的库我想知道如何使其可移植到我正在测试的拱门的最佳方式。

我知道我需要一个 config.h 来根据拱门定义事物,但我不知道这有多自动化。

任何其他拥有构建系统的方式都受到热烈欢迎!

0 投票
7 回答
17123 浏览

cmake RUNTIME_OUTPUT_DIRECTORY 在 Windows 上

我正在使用来管理我的跨平台构建,除了这个问题,我已经解决了所有问题。我设置RUNTIME_OUTPUT_DIRECTORYbin/存储数据文件的目录。在 Linux 上,这可以正常工作。在 Windows 上,可执行文件根据构建类型放置在Debug/Release子目录中。有没有办法让将可执行文件复制到正确的目录,或者(甚至更好)完全停止使用这些子目录?

0 投票
4 回答
11427 浏览

CMake:添加构建目录以包含路径

我正在寻找将构建目录(不同于我的源目录,一个 git 存储库)添加到 gcc 的包含路径的好方法,以便在汇编。