问题标签 [external-project]

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 回答
1182 浏览

cmake - 如何使用 ExternalProject_Add 指定目标?

使用 ExternalProject 时是否可以仅构建特定目标?特别是,我只需要下载和构建 OpenCoarrays 库的 MPI 版本。我试过

但它同时构建串行和 MPI 版本。如果不可能,也欢迎任何黑客攻击。

0 投票
1 回答
107 浏览

cmake - Cmake 外部项目安装程序

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

0 投票
1 回答
686 浏览

cmake - 将当前编译器转发到 ExternalProject

我试图使用ExternalProject模块:

我提出了一个问题:由于某种原因,此模块不转发编译器,用于(父)cmake 以及 CMAKE_BUILD_TYPE。

我尝试使用 CMAKE_CACHE_DEFAULT_ARGS 直接设置 CMAKE_CXX_COMPILER,但它并没有安静下来。

这种行为是否有合理的解释?是否有适当的(cmake-ish)方法将当前使用的编译器/构建配置转发到 ExternalProject?

0 投票
2 回答
1622 浏览

c++ - 使用 ExternalProject_Add 的 CMake 链接错误 1

我最近将我的 C++ 项目的构建系统切换到了 CMake。我正在尝试使用 ExternalProject_Add 函数下载所需的库(目前有 3 个,GLM 和 TINYOBJ 是静态的,GLFW 可以是静态的或动态的),然后在我的项目中链接到它们。我希望能够以最小的努力链接这些库(可能还有其他库),以便我可以在多个平台上构建。或者,如果其他人来参与该项目,他们不必太担心安装正确的库。

但是,在构建时(在带有 MinGW 的 Windows 10 上)我不断收到这些错误:

我的目录结构如下所示:

这是我的 CMakeLists.txt:

这是 deps-CMakeLists.txt 文件:

我的“main”与错误中引用的所有文件一起位于“src”目录中的 Main.cpp 中作为“未定义的引用”。我已经为所有库添加了包含目录(就在 ExternalProject_Add 命令之后),并尝试链接为 GLFW 构建的动态库,但它似乎仍然不起作用。

为了正确构建它,我缺少什么?任何帮助,将不胜感激。

更新:

正如克雷格斯科特所建议的那样,我已经改变了一些东西并将ExternalProject_Add命令移动到另一个文件,该文件在我的构建的配置阶段执行。我已确保所有外部库都已链接。我什至在不同的测试项目中分别测试了每个库,以确保 CMake 文件正常工作。

我得到的所有“未定义引用”都来自我编写的文件,并且在我的源代码树中。他们如何/为什么不被包括在内?

注意:我也尝试过包含“src”目录,但似乎没有做任何事情。

0 投票
2 回答
786 浏览

cmake - 如何进行并行 CMake ExternalProject 构建

在构建 CMake 项目时(例如在 Windows 上),我可以通过执行以下命令来执行并行构建:

/m 开关被传递给 msbuild,我得到并行构建。但是,如果我的 CMakeLists 中有一些外部项目,则该开关不会传递给它的构建命令。

确保并行构建我的 ExternalProject 的最佳方法是什么?如果可以避免,我不想硬编码 BUILD_COMMAND。

0 投票
1 回答
536 浏览

qt - 如何在 CMake 中将现有 QMake 项目(.pro 项目文件)用作“外部项目”?

是否有关于如何将现有 QMake 项目与 .pro 项目文件用作 CMake 中的“外部项目”的简明文档或示例?这可以在 qtcreator 中通过将一个项目标记为另一个项目的依赖项来完成,但最好使用 ExternalProject() CMake 语法更明确地定义它。

相关问题:CMake:如何构建外部项目并包含其目标

0 投票
1 回答
7037 浏览

build - 使用 CMake 安装 ExternalProject

我的其中一个中有以下代码CMakeLists.txt

除了我要安装的目标之外,我将如何安装这个 ExternalProject?现在我正在尝试这样做:

但是我收到以下错误:

有什么建议么?

0 投票
1 回答
2061 浏览

linux - 将 autogen.sh 与 ExternalProject_Add 一起使用

我尝试在 CMakeLists.txt 中设置 ExternalProject_Add,

为此,我发现了这个问题:

CMake EXTERNALPROJECT_ADD 与 Git 存储库的正确用法是什么?

但是我有一个问题,我不能打电话CONFIGURE_COMMAND configure,因为我必须打电话./autogen.sh给 generate configure.ac。我不知道如何让 cmake 运行./autogen.sh

0 投票
1 回答
3054 浏览

c++ - 如何在配置主要项目时构建 cmake ExternalProject?

当他们的安装目标搞砸时,引用 ExternalProjects 可能会很痛苦。因此,在为给定项目生成主项目文件之前,可能需要构建和安装一次 ExternalProjects。CMake是否有可能以及如何做到这一点?

0 投票
4 回答
10120 浏览

cmake - 主项目配置时如何配置ExternalProject?

CMake 的ExternalProject允许定义如何下载、配置、构建和安装外部项目。所有的步骤都将在构建时执行。

我想在配置主项目期间执行外部项目的配置步骤。外部项目配置完成后,导入目标的描述可用,因此可以加载外部项目的find_package()功能。

是否可以在配置时构建一些目标?