Cmake 外部项目安装程序

Cmake ExternalProject Installer

我有一个外部项目,其中 windows 分发版是 .exe 安装程序而不是 tarball。我可以从命令行 运行 .exe,但是 cmake 当然会抱怨它在 URL 中找不到 tarball 文件名。有什么方法可以将 ExternalProject 与 .exe 安装程序一起使用吗?

URL 参数的 documentation 表示传递的 URL 必须表示包含源的压缩包:

The URL option may refer locally to a directory or source tarball, or refer to a remote tarball (e.g. http://.../src.tgz).

这符合以下事实:ExternalProject 的目的主要集中在 从源代码构建东西,而不仅仅是安装它们。

您可能想要做的是将 DOWNLOAD_COMMAND 设置为将下载 .exe 的命令行调用。 DOWNLOAD_COMMAND是一个比较低级的东西,你基本上可以让它为所欲为。