我是cmake的新手,我只是用它在我的ubuntu linux上安装opencv。 这是我跑的命令:
"cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/home/jinha/OCV/source"
然后它返回错误:
"FATAL: In-source builds are not allowed.
You should create separate directory for build files."
我当前的目录/ home / jinha / OCV / build / opencv确实包含CMakefiles.txt文件,所以这不是问题所在。我试图在命令中更改目录,但它们都引发了同样的错误。我在这个问题上看到了其他答案,所以每次运行命令之前我都会删除CMakeFiles文件夹和CMakeCache.txt文件,但是没有一个能够工作。感谢。
答案 0 :(得分:77)
它希望您创建一个单独的构建目录(任何地方),然后在那里运行cmake。例如:
mkdir my_build_dir
cd my_build_dir
rm ../CMakeCache.txt
cmake .. -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/home/jinha/OCV/source
请注意此示例中的..
告诉cmake在哪里查找源。
如果您在重新构建之前未删除CMakeCache.txt
,则仍会显示此错误。
因此,请务必先删除CMakeCache.txt
,然后再运行cmake
。
答案 1 :(得分:3)
从sources下载并解压缩OpenCV源成功后,您需要创建简单的命令文件install.sh。例如,您的工作目录将是/ home / user / myopencv
所以/home/user/myopencv/install.sh将包含下一个代码:
#!/bin/bash
rm CMakeCache.txt
mkdir build
cd build
cmake .. -DCMAKE_BUILD_TYPE=RELEASE -DCMAKE_INSTALL_PREFIX=/usr/local
make
make install
make clean
下一步
chmod 777 install.sh
./install.sh
在完成所有这些可执行文件之后:
root@cartman:/usr/local/bin# ls -las | grep opencv
32 -rwxr-xr-x 1 root root 29888 апр 20 18:10 opencv_annotation
244 -rwxr-xr-x 1 root root 247608 апр 20 18:10 opencv_createsamples
244 -rwxr-xr-x 1 root root 247504 апр 20 18:10 opencv_haartraining
20 -rwxr-xr-x 1 root root 18600 апр 20 18:10 opencv_performance
288 -rwxr-xr-x 1 root root 294592 апр 20 18:10 opencv_traincascade
16 -rwxr-xr-x 1 root root 14288 апр 20 18:10 opencv_version
60 -rwxr-xr-x 1 root root 61040 апр 20 18:10 opencv_visualisation
享受!