Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/cmake/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Makefile 关于;“使安装”;_Makefile_Cmake_Installation - Fatal编程技术网

Makefile 关于;“使安装”;

Makefile 关于;“使安装”;,makefile,cmake,installation,Makefile,Cmake,Installation,我正在安装,据说 至少在Linux和OSX下,只需将INSTALL_OPENGV设置为on,就可以激活主机操作系统上的安装(包括头部) 这是针对进行安装的吗?至少我是这样理解的 如果是这样的话,为什么在的dockerfile中(这个库依赖于OpenGV),它是这样的 # Install opengv from source RUN \ mkdir -p /source && cd /source && \ git clone https://git

我正在安装,据说

至少在Linux和OSX下,只需将INSTALL_OPENGV设置为on,就可以激活主机操作系统上的安装(包括头部)

这是针对
进行安装的吗?至少我是这样理解的

如果是这样的话,为什么在的dockerfile中(这个库依赖于OpenGV),它是这样的

# Install opengv from source
RUN \
    mkdir -p /source && cd /source && \
    git clone https://github.com/paulinus/opengv.git && \
    cd /source/opengv && \
    mkdir -p build && cd build && \
    cmake .. -DBUILD_TESTS=OFF -DBUILD_PYTHON=ON && \
    make install && \
    cd / && \
    rm -rf /source/opengv

INSTALL\u OPENGV
的标志未设置为on,但
make INSTALL
可以。查看OpenGV文件,
INSTALL\u OpenGV
标志默认为OFF。

CMakeLists.txt
判断,当
INSTALL\u OpenGV
OFF
时,只安装头

当标志为
ON
时,它还会安装由
opengv
目标生成的二进制文件


即使
CMakeLists.txt
中没有
install()
调用,也会生成CMake的
install
目标。在这种情况下,
makeinstall
将不起任何作用。

也许OpenSfM只需要标题?我认为你的问题不在这里。或者我误解了你的问题。您正确理解了安装OPENGV的目的。为什么OpenSfM会这样使用它,这将是一个很好的问题。事实上,我正试图了解makeinstall的流程。由于我对cmake还不熟悉,所以我正试图了解它是如何工作的。这是OpenGV特有的。如果您想通过OpenGV学习CMake的使用,那么在这里提问是错误的。如果您想了解CMake安装过程,您应该了解更多库,并阅读一些文档和教程。这个问题在这里不太合适。