问题标签 [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.
visual-studio-2012 - 使用 ExternalProject_Add 后缺少项目
我正在使用 VS2012+cmake2.8.12。我的问题是 CMake 无法为我的外部项目生成正确的路径。例如:
而'external.vcxproj'
应该是..\path\to\external.vcxproj
这是我使用 ExternalProject_Add 命令的方式:
非常感谢任何帮助!
windows - ExternalProject_Add 何时构建?
我想构建 openssl 并将我的项目链接到它。在我的项目中,我有一个名为 net 的库,它是使用 openssl 的部分。所以在我的 net\CMakeList 中,我添加了
在用于组织所有外部库的 ext 文件夹中,我在名为 openssl 的文件夹中有一个全新的解压缩 openssl 源代码。然后我编辑了 ext\CmakeList
编译时,编译器报错找不到包含文件,openssl源代码根本没有编译,因为没有out32dll和inc32。
我的问题是: ExternalProject_Add 何时真正构建项目?如果我根据openssl制作我的网络库,这是否意味着当我构建网络时需要先检查并构建openssl?
c++ - 将 CMake 变量传递给 ExternalProject_Add
我正在使用带有 ExternalProject_Add 的 CMake 构建一个外部库。我在这里使用了答案来生成以下内容(它捕获了 CMake 的命令行输入,以便将其传递给 ExternalProject_Add 命令):
ExternalProject_Add 命令如下所示:
我无法弄清楚如何正确地将 CMAKE_ARGS 变量传递给该命令。显然,其他变量工作正常,但 CMAKE_ARGS 似乎没有正确扩展,因为我知道它包含我希望它包含的内容。我在 CMake 的语法上做错了吗?
c++ - CMake:GLFW 作为 ExternalProject
问题
我正在尝试制作一个使用GLFW的项目。对于这个项目,我使用CMake作为构建系统。我想这样做,因此用户只需使用 CMake 构建我的项目,并且作为该过程的一部分,GLFW 将得到适当的构建和链接。
为此,我将 GLFW 添加为ExternalProject
我的 CMake 文件中的一个:
但是,当我生成项目(对于 VS12 2013 x64)并运行时ALL_BUILD
,出现以下错误:
当我尝试使用 CMake 构建 GLFW 而不指定CMAKE_INSTALL_PREFIX
.
尝试的解决方案
为了解决这个问题,我想为ExternalProject指定CMAKE_INSTALL_PREFIX
选项。glfw
但是,我不希望能够做到这一点。我试过了:
添加外部项目后。然而,这个接缝没有任何效果。
问题
如何CMAKE_INSTALL_PREFIX
为glfw
ExternalProject 设置?
正如@drescherjm 所提到的,此失败的根源是CMake 正在尝试创建C:/Program Files
需要特殊权限的文件。问题是 CMake 默认为这个位置,因为我无法在我的 CMake 文件中设置正确的位置。
附加信息
操作系统:Windows 8.1 x64
CMake 版本:3.1.1
Visual Studio 版本:Community 2013 V4.5.53349
CMake 文件
git - CMake ExternalProject_Add Git
I have a git-bare-repository on my desktop and I would like to clone it with CMake. My repository has this path C:\Users\demoUser\Desktop\learnGIT\prog
. My CMakeLists.txt looks like this:
but in the generated folder prog-build
is just wast. The generated folder structure doesn't include any of my files from the repository.
Does somebody has an idea?
cmake - 在 ExternalProject_Add 命令中 INSTALL_DIR 有什么用?
我不明白在 ExternalProject_Add 命令中 INSTALL_DIR 的用法。我尝试使用它,但它似乎不起作用。下面是一个 CMakeLists.txt 示例,使用了可以快速编译的 Eigen 库:
我选择了以下项目层次结构:
从构建存储库中,我输入:
安装过程失败并显示以下消息:
文件无法创建目录:/usr/local/include/eigen3.
也许需要管理权限。
据我了解,这意味着我需要在配置步骤中定义一个“前缀”:
但是,INSTALL_DIR 变量已在 ExternalProject_Add 命令中定义。但是,当我通过添加修改 INSTALL_DIR 的值时,我得到了同样的错误
在 ExternalProject_Add 命令中。
那么,INSTALL_DIR 有什么用呢?我究竟做错了什么?
当然,我知道如何提供自己的配置命令来添加前缀并解决问题。但这不是我的问题。我的问题是:如果我必须这样做,INSTALL_DIR 的目的是什么?
cmake - cmake external projects 命令似乎忽略了 INSTALL_DIR
首先,我对 cmake 比较陌生。我正在尝试使用 cmake 构建具有单个外部依赖项的项目。我将外部项目的 INSTALL_DIR 指定为 CMAKE_INSTALL_PREFIX,因此它安装到与父项目相同的位置。但是当我运行 make 时,它会忽略它并尝试安装到 /usr/local/lib。
这是我的 CMakeList.txt:
外部项目的 CMakeLists.txt 如下所示:
它可以很好地克隆和构建外部项目,但是在安装步骤中会卡住:
如您所见,安装配置为空。查看为外部项目生成的配置,我在 cmake_install.cmake 中找到了这个:
因此,似乎将 INSTALL_DIR 传递给 ExternalProject_Add 并没有设置安装前缀。安装步骤成功,如果我改为使用:
那么 INSTALL_DIR 的目的是什么?
cmake - 如何获取 ExternalProject_Add 到下载库?
我整理了一个简单的 CMakeLists.txt 文件,该文件对 ExternalProject_Add 进行了一次调用,但从未下载过该项目。我需要在文件中添加更多内容吗?
然后我执行cmake -G "Visual Studio 12" ..
shell - 使用 shell 命令作为 INSTALL_COMMAND 到 ExternalProject_Add
INSTALL_COMMAND
是否可以在 cmake 的阶段使用任何 shell 命令ExternalProject_Add
?例如
我注释掉了我想使用的 INSTALL_COMMAND,find 和 cp 似乎不允许,“没有这样的文件或目录,错误 127”是使用它的结果。
cmake - 作为 git 子模块的依赖项,没有配置 cmake 项目
我有一个以 cmake 作为其构建系统的项目。我希望将项目的依赖项作为 git 子模块提取,并将它们的构建过程集成到整个项目的一个 cmake 构建过程中。
如果依赖项也使用 cmake 作为它的构建系统,那么它非常容易使用ExternalProject_Add
。我已经能够集成这样的依赖项(SDL)。
但是,如果我的依赖项不使用 cmake,我该怎么办?例如,在我的情况下,这些将是 lua 和 bgfx。考虑到这种情况,有哪些可能的方法来组织所有内容?我是否应该自己为此类项目编写和维护 CMakeLists.txt 文件,并../../bgfx/src/main.cpp
为每个此类依赖项提供一些丑陋的源引用,并为每个此类 CMakeLists.txt 文件创建一个文件夹以引用此文件夹ExternalProject_Add
?或者可能还有其他方法?