CMake可以生成配置文件吗

Can CMake generate a configure file?

本文关键字:配置文件 CMake      更新时间:2023-10-16

我需要配置文件从C++转换到JS,我正在尝试在项目中使用emscripten。Emscripten附带了一个名为emconfigure的工具,它取代了autoconf-configure

但是我正在构建的项目使用cmake作为构建系统,并且目前(Jan-12)emscripten只支持autoconf,所以我通过生成configure并在make上执行端口来绕过它,所以有办法从cmake创建配置文件吗??我不是在说制作文件。。而是配置文件本身。

是的,它可以:

configure_file(<input> <output>
               [COPYONLY] [ESCAPE_QUOTES] [@ONLY]
               [NEWLINE_STYLE [UNIX|DOS|WIN32|LF|CRLF] ])

示例.h.in

#ifndef EXAMPLE_H
#define EXAMPLE_H
/*
 * These values are automatically set according to their cmake variables.
 */
#define EXAMPLE "${EXAMPLE}"
#define VERSION "${VERSION}"
#define NUMBER  ${NUMBER}
#endif /* EXAMPLE_H */

在您的cmake文件中:

set(EXAMPLE "This is an example")
set(VERSION "1.0")
set(NUMBER 3)
configure_file(Example.h.in Example.h)

配置的Example.h:

#ifndef EXAMPLE_H
#define EXAMPLE_H
/*
 * These values are automatically set according to their cmake variables.
 */
#define EXAMPLE "This is an example"
#define VERSION "1.0"
#define NUMBER  3
#endif /* EXAMPLE_H */

文档:

  • CMake 3.0
  • CMake 2.8.12

yes cmake根据您的目标平台为您生成构建项目所需的文件。然而,你需要自己为CMake编写CMakelist.txt的文件,或者你必须从其他人那里获得它们。如果emscripten已经安装了它们,并且您已经安装了cmake,请转到cource目录的根目录并启动cmake以查看可以使用的参数列表

事实上,不要生成"集",但你可以使用函数来完成他所做的一切,就像vereficação数据类型、vereficar标头等的情况一样。

好吧,我将向下链接到我的项目,其中包含所有这些函数。我建议对它进行研究,任何事情都可以给我发电子邮件或其他东西来回答你的问题。

此处

也检查/deps/cmake文件夹以查看我们创建的函数。

Cmake是一个构建系统。它生成Makefiles。查看此处了解更多信息。但为了简单地回答你的问题,不,你不能用cmake生成配置文件。