2017-08-05 129 views
7

Ben cmake için yeni ve sadece ubuntu linux üzerinde opencv yüklemek için kullanıyorum. İşte koştum komut var:"In-source yapılarına izin verilmez" cmake içinde

"cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/home/jinha/OCV/source" 

Sonra hata verir:

"FATAL: In-source builds are not allowed. 
You should create separate directory for build files." 

Benim geçerli dizin/home/Jinha/OCV'nin/build/OpenCV, CMakefiles.txt dosyasını içermiyor, yani sorun değil. Komutumdaki dizini değiştirmeyi denedim, ancak hepsi aynı hatayı artırıyor. Bu konudaki diğer cevapları gördüm, bu yüzden CMakeFiles klasörünü ve CMakeCache.txt dosyasını her defasında komutunu çalıştırmadan sildim ama hiçbiri işe yaramadı. Teşekkürler.

cevap

21

Ayrı bir oluşturma dizini (her yerde) oluşturmanızı ve orada cmake çalıştırmanızı ister. Örneğin:

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

Not Bu örnekte .. nereye kaynağına bakmak için cmake söylüyorum.

Yeniden oluşturmadan önce CMakeCache.txt'u kaldırmadıysanız, hala bu hatayı gösterecektir. Yani, lütfen 'u çalıştırmadan önce CMakeCache.txt'u silmeyi unutmayın.

+0

Vay, çok teşekkürler! Bu benim ilk sorum oldu. Çok teşekkürler! Tamamen çalıştı. –

+0

CMAKE, kaynaklarınızı nesne ve diğer derleme dosyaları ile kirletmemenizi engellemek için başka bir dizinde oluşturmanızı gerektirerek sadece akıllı ve kaynaklarınızı "* bozulmamış *" olarak koruyor ... –

+0

@ 정진하: Rica ederim. Bu problemi çözdüyseniz, soldaki onay işaretini tıklayarak cevabı "kabul edebilirsiniz". –