2017-08-05 23 views
7

我是新來的cmake,而我只用它來對我的Ubuntu Linux操作系統安裝OpenCV。 這是我跑的命令:「在源建立不準」的cmake中

"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." 

我的當前目錄,/家/ jinha/OCV /編譯/ OpenCV的,不包含CMakefiles.txt文件,所以這不是問題。我試圖改變我的命令中的目錄,但他們都提出了相同的錯誤。我在這個問題上看到了其他答案,所以我在每次運行命令之前都擦除了CMakeFiles文件夾和CMakeCache.txt文件,但都沒有運行。謝謝。

回答

21

它希望您創建一個單獨的構建目錄(任何地方),並在那裏運行cmake。例如:

mkdir my_build_dir 
cd my_build_dir 
cmake .. -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/home/jinha/OCV/source 

注意,在這個例子中,..告訴cmake的地方去尋找根源。

如果在再次構建之前沒有刪除CMakeCache.txt,它仍會顯示此錯誤。所以,請記得在運行cmake之前先刪除CMakeCache.txt

+0

哇,非常感謝!這是我的第一個問題。非常感謝!完全合作。 –

+0

CMAKE通過要求您在另一個目錄中構建,以防止使用對象和其他構建文件污染源來保持源代碼爲「* pristine *」,因此CMAKE正在變得更加智能... –

+0

@정진하:不客氣。如果這解決了你的問題,你可以通過點擊左邊的複選標記來「接受」答案。 –