Soru:
Raspbian'da% 61'de açık CV oluşturma başarısız
user1068636
2012-09-16 19:14:45 UTC
view on stackexchange narkive permalink

Raspbian'da şu adımları izleyerek Open CV'yi yüklemeye çalışıyorum:

http://mitchtech.net/raspberry-pi-opencv/

Ben bir "make" yapana kadar her şey yolunda gidiyor. % 61'e kadar çıkıyor ve ardından şu hatayı alıyorum:

  [% 61 yerleşik hedef opencv_perf_gpu] [% 61 CXX nesne modülleri oluşturma / gpu / CMakeFiles / opencv_test_gpu.dir / test / test_core .cpp.o] c ++: dahili derleyici hatası: Killed (program cclplus) Lütfen uygunsa önceden işlenmiş kaynakla birlikte tam bir hata raporu gönderin. Talimatlar için bkz. <file: ///usr/share/doc/gcc-4.6/README.Bugs> .make [2]: *** [modüller / gpu / CMakeFiles / opencv_test_gpu.dir / test / test_core.cpp.o] Hata 4make [1]: *** [modüller / gpu / CMakeFiles / opencv_test_gpu.dir / tümü] Hata 2make: *** [tümü] Hata 2  

2012-08-16-wheezy-raspbian görüntüsünü çalıştırıyorum, 8 gig'e genişletildi.

İzlediğim web sitesi Debian img üzerine Open CV'nin [2.3.1] eski bir sürümünü kuruyor.

Sorunun bu olduğunu düşünüyor musunuz? Bu sorunu gidermeye değer mi yoksa Açık CV'nin eski bir sürümüne dönüp bunun yerine debian mı kullanmalıyım?

üç yanıtlar:
Krzysztof Adamski
2012-09-16 19:38:19 UTC
view on stackexchange narkive permalink

Hata mesajınız, dahili derleyici hatası aldığınızı söylüyor. Bu, derleyicide bu kodun oluşturulmasını engelleyen bir hata olduğu anlamına gelir. Bazen, özellikle armv6 gibi daha az desteklenen mimarilerde olur. Bu sorunu çözmek için yapabileceğiniz birkaç şey var:

  • derleyicinin daha yeni sürümünü kullanın. Debian 6'daki varsayılan sürüm GCC-4.6'dır, ancak GCC-4.7 de mevcuttur. Kurulumu kolaydır, sudo apt-get install gcc-4.7 yazmanız yeterlidir. Ancak kurulum yalnızca bir adımdır. Şimdi opencv build system'in ( cmake ) onu kullanmasını sağlamalısınız. Bunu, ortam değişkenlerini kullanarak cmake 'ın önüne CC = gcc-4.7 CXX = g ++ - 4.7 koyarak deneyebilirsiniz. Yani cmake -D CMAKE_BUILD_TYPE = RELEASE -D CMAKE_INSTALL_PREFIX = / usr / local -D BUILD_PYTHON_SUPPORT = ON -D BUILD_EXAMPLES = ON .. olacaktır. Veya bunu cmake-gui içinde yapabilirsiniz. Her iki durumda da, baştan başlayın, derlediğiniz klasörleri kaldırın ve yeni bir tane oluşturun.

  • Göründüğü gibi eski opencv sürümünü yükleyin bu, bu öğreticiyi yazan biri için çalışıyordu. gcc sürümünü değiştirmek işe yaramazsa, bu denemeye değer. Yeni sürümdeki özelliklere gerçekten ihtiyacınız olmadığı sürece.

  • g ++ derleyici seçenekleriyle oynayın. Özellikle optimizasyon seviyelerinde ( -O seçeneği). Bazen optimizasyonları kapatmak ( -O0 ) dahili derleyici hatalarıyla ilgili sorunları çözer. Maalesef, bunun nasıl yapılacağı konusunda size hiçbir ipucu veremem. Oluşturduğu cmake yapı sistemi veya Makefile ile uğraşmanız gerekebilir.

şu anda, cv 2.3.1'i açmak ve her şeyi yeniden inşa etmek için 2. madde işaretinize dönüyorum. Bu işe yaramazsa, gcc-4.7 ile devam edeceğim. gcc-4.7'yi kurduktan sonra, bahsettiğiniz bu ortam değişkenlerini tam olarak nasıl ayarlarım? CC = gcc-4.7 ve CXX = g ++ - 4.7?
Ya `export CC = gcc-4.7` ve` export CXX = g ++ - 4.7` komutlarını kullanırsınız veya sadece `CC = gcc-4.7 CXX = g ++ - 4.7 c KOMUTUN KALANINI YAPIN` yazın
Raspbian Wheezy'de OpenCV 2.3.1 ile çalışmasını sağladım. "Kmeans", "çizim" ve "convexhull" adlı 3 demoyu başarıyla çalıştırdım. Yardımınız için teşekkürler!
Ayrıca apt-get komutuna eklenmesi gereken g ++ - 4.7'yi kurmanız gerekir. Bunun yanında cmake-gui kullanılarak derleyici versiyonu kolaylıkla ayarlanabilir.
Alex Chamberlain
2012-09-16 20:14:26 UTC
view on stackexchange narkive permalink

Hafızanızın tükendiğine makul ölçüde eminim. OpenCV'yi bilgisayarınızı kullanarak çapraz derlemelisiniz.

Hata mesajını araştırdım ve bu sonucu gördüm. Ama bana mantıklı gelmeyen şey, diğer arkadaşın neden debian görüntüsüne open cv 2.3.1 yükleyebildiği (youtube videosunu bile gösteriyor)?
Ayrıca şu sayfayı okuyorum: http://www.bootc.net/archives/2012/05/26/how-to-build-a-cross-compiler-for-your-raspberry-pi/ ve merak ediyorum Bunu yapıyorum, bu Open CV ile nasıl çalışır? Açık CV için tüm ikili dosyaları oluşturmak ve bunları bir yerde ahududu pi'ime kopyalamak için araç zincirimi kullanıyor muyum? Bu nasıl çalışıyor?
@user1068636: Hangi hafıza bölmesini kullanıyorsunuz? SWAP'ı etkinleştirdiniz mi? Yeterli hafızayla ilgili bir sorun olsaydı, "dmesg" günlüğünüzde "OOM katilinin" izlerini bulabileceğinizi düşünüyorum.
@Krzysztof - Ne tür bir bölme kullandığınızı veya takasın etkinleştirilip etkinleştirilmediğini nasıl anlayabilirsiniz?
@user1068636: Bir yol, "free -m" ile ne kadar kullanılabilir belleğiniz olduğunu kontrol etmektir. "Mem:" satırındaki "toplam" değerini arayın. Bellek bölme hakkında hiçbir şey bilmiyorsanız, muhtemelen varsayılan olan 192MB'niz vardır (`free` komutu biraz daha az gösterecektir). 128, 224 veya 240'a da sahip olabilirsiniz. Ne kadar çok RAM'e sahipseniz, GPU için o kadar az RAM ayrılır. Aynı komutu kullanarak takas işleminizin etkin olup olmadığını da kontrol edebilirsiniz, sadece 'Takas:' satırını arayın. Sıfır değilse, takas etkinleştirilmiş demektir.
user14206
2014-04-15 13:38:48 UTC
view on stackexchange narkive permalink

Ben de aynı sorunu yaşadım. Çözüm, yeni bir Ahududu almaktı. Eskisinin yalnızca 256MB hafızası vardı. 512M versiyonunda yeni bir raspbian görüntü üzerinde test ettiğimde her şey derlendi, (6-7 saat)



Bu Soru-Cevap, otomatik olarak İngilizce dilinden çevrilmiştir.Orijinal içerik, dağıtıldığı cc by-sa 3.0 lisansı için teşekkür ettiğimiz stackexchange'ta mevcuttur.
Loading...