[英]"In-source builds are not allowed" in cmake
我是 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 文件,但它們都不起作用。 謝謝。
它希望您創建一個單獨的構建目錄(任何地方),並在那里運行 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
之前先刪除CMakeCache.txt
。
從源中成功下載並解壓縮 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
享受!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.