BeagleBone Üzerinde Yazılım Geliştirme Ortamı

Başlatan Tagli, 05 Mayıs 2012, 09:52:34

fryrmnd

#15
Erdem hocam yazdıklarınızdan kaynaklandığını düşünüyordum. Ama nasıl ayarlanacağını net bilmiyorum. Path kısmına derleyicinin executable ı mıdır. nereyi gösterceğimi tam bilemiyorum. bu da komutun çıktısı

echo $PATH
/usr/lib/lightdm/lightdm:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games


Tagli hocam  arm yazıp tab layınca çıkanlar.

arm2hpdl                     arm-linux-gnueabi-ld
arm-linux-gnueabi-addr2line  arm-linux-gnueabi-ld.bfd
arm-linux-gnueabi-ar         arm-linux-gnueabi-ld.gold
arm-linux-gnueabi-as         arm-linux-gnueabi-nm
arm-linux-gnueabi-c++filt    arm-linux-gnueabi-objcopy
arm-linux-gnueabi-cpp-4.4    arm-linux-gnueabi-objdump
arm-linux-gnueabi-elfedit    arm-linux-gnueabi-ranlib
arm-linux-gnueabi-g++-4.4    arm-linux-gnueabi-readelf
arm-linux-gnueabi-gcc-4.4    arm-linux-gnueabi-size
arm-linux-gnueabi-gcov-4.4   arm-linux-gnueabi-strings
arm-linux-gnueabi-gprof      arm-linux-gnueabi-strip

acaba bu şekilde path a eklinmiş mi.

Hocam kendi derleyicimi derliyecek kadar bilgi yok maalesef.

Seçkin hocam videodaki anlatan kişi c++ projesi oluşturmuş bende aynı onun yüklediği compilerları yüklemiştim. Yani C++ bildiğimizden değil.

Yamak hocam sağolasın. Şimdi eclipse den qt ye felan iyici karıştırıyorum. Aslında basit bir ide gibi gözüküyor ama burdan devam etmem lazım diye düşünüyorum.

Erdem

#16
Alıntı yapılan: fryrmnd - 19 Kasım 2012, 22:14:36
bu da komutun çıktısı

echo $PATH
/usr/lib/lightdm/lightdm:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games

Anladığım kadarıyla eklenmemiş. Eklemek için basitçe yapmanız gereken ev dizininde .bashrc isimli bir dosyaya bu bilgileri yazmak.

$  nano ~/.bashrc

şeklinde. Burada nano sadece basit bir editör. Başka bir editör de kullanabilirsiniz. En baştaki ~/ ifadesi hangi dizinde olursanız olun ev dizinine gitmek için. Yoksa

$ nano /home/kullanıciadi/.bashrc

şeklinde de yazabilirsiniz. Bu dosyanın ismi bazen .bash_profile'da olabiliyor. Hangisi varsa ona ekleyebilirsiniz.

PATH=$PATH:/bu/kisma/derleyicinin/oldugu/dizin/gelecek
export PATH

Bakalım ben de en azından sizin kurduğunuz programı bir deneyeyim. Anladığım kadarıyla derleme işlemi Ubuntu üzerinde yapıp ARM için kod üretiyorlar.

Ama denedim.

$ sudo apt-get install g++-arm-linux-gnueabi

şeklinde kurdum daha sonra şu komutla sürümünü öğrendim.

$ arm-linux-gnueabi-g++ -v
Yerleşik özellikler kullanılıyor.
COLLECT_GCC=arm-linux-gnueabi-g++
COLLECT_LTO_WRAPPER=/usr/lib/gcc/arm-linux-gnueabi/4.6/lto-wrapper
Hedef: arm-linux-gnueabi
../src/configure -v --with-pkgversion='Ubuntu/Linaro 4.6.3-1ubuntu5' --with-bugurl=file:///usr/share/doc/gcc-4.6/README.Bugs --enable-languages=c,c++,fortran,objc,obj-c++ --prefix=/usr --program-suffix=-4.6 --enable-shared --enable-linker-build-id --with-system-zlib --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --with-gxx-include-dir=/usr/arm-linux-gnueabi/include/c++/4.6.3 --libdir=/usr/lib --enable-nls --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --enable-gnu-unique-object --enable-plugin --enable-objc-gc --enable-multilib --disable-sjlj-exceptions --with-arch=armv7-a --with-float=softfp --with-fpu=vfpv3-d16 --with-mode=thumb --disable-werror --enable-checking=release --build=i686-linux-gnu --host=i686-linux-gnu --target=arm-linux-gnueabi --program-prefix=arm-linux-gnueabi- --includedir=/usr/arm-linux-gnueabi/include --with-headers=/usr/arm-linux-gnueabi/include --with-libs=/usr/arm-linux-gnueabi/lib
seçenekleriyle yapılandırıldı.
Evre modeli: posix
gcc sürümü 4.6.3 (Ubuntu/Linaro 4.6.3-1ubuntu5)

Hiç ortam değişkeni olarak eklemeye gerek kalmadan çalıştı.

Tagli

arm yazıp tab-tab yapınca bir şeyler çıktığına göre sorun PATH ile ilgili değil bence.

Yalnız dikkatimi şu çekti:
Alıntı Yaparm-linux-gnueabi-g++-4.4
Burada komutun sonunda versiyon numarası da var. Bunu daha önce görmemiştim. Bazı durumlarda bu şekilde bir kullanım olabilir ama genelde programın normal adı ile de bir link yapılıp bağlanır.

Derleme komutunu girerken sonuna "-4.4" kısmını da eklemek veya arm-linux-gnueabi-g++ adında bir sembolik link oluşturup arm-linux-gnueabi-g++-4.4 dosyasına bağlamak denenebilir.
Gökçe Tağlıoğlu

fryrmnd

Eyvallah hocam. sudo apt-get install g++-arm-linux-gnueabi
ile derleyiciyi yükleyince sanırım son sürümü(4.6) yüklüyor.  Ya sürüm farkından yada Tagli hocam dediğiniz gibi  sonuna versiyon numarasını ekleyince(arm-linux-gnueabi-g++-4.6) çalıştı . sanırım 4.4'te de çalışır. Çok vakit kaybettim.
Tekrardan teşekkürler herkese.

Erdem

Ben bir 15 dakika seyrettim ama çok sıkıldım  :-\

Şimdi mesajları okuyunca da bazı arkadaşlar sormuş ikincil  slave olarak farklı bir işletim sistemi mi kurmuş diye. Hayır arkadaşlar sadece beaglebone üzerine ubuntu kurmuş. Ama bunu yapmak için ubuntu kurmaya gerek olmadığını armstrong kurulu iken de aynı şeyleri yapabileceğinizi söylemiş.

Ama bilgisayarında virtualbox kurulu. Virtualbox şu demek. Örneğin ben daha önce ubuntu üzerine mac osx snow leopard kurmuştum. Yani birden fazla işletim sistemini bir bilgisayarda çalıştırmaya yarıyor. Bu işlemleri yapmak için virtualbox kurmanıza da gerek yok. Adamın canı istemiş kurmuş.

Yaptığı ssh ile beaglebone'a bağlanıp ARM için kod üretmek. Ama uzattıkça uzatmış. Aslında bir ara belki bunun Emacs ya da Vim ile mini sürümünü yazabiliriz.

fryrmnd

Hocam benim gibi hiç linux bilmeyenler için tek başına işe yaradığını bildiğiniz bir kaynak olması açısından uygun gibi geliyor. Nette cross compile il ilgili bolca özet sayılabilcek kaynak var ama bazen bilmeyen için işleri daha da karmaşıklaştırıyor gibi.

Erdem

Biraz da böyle Emacs kullananlar benim gibi tembel oluyor galiba. Alışmışız tek tuşla program derlemeye.

Ben olsam bir make dosyası oluştururdum. Klasik make  ;)

Ama elektronik konusunda çok iyi olduğu zaten belli oluyor. O videoların bir tanesinde OpenGL kullanarak çarklı bir uygulama yapmış. Ufak deneme kartını hareket ettirince ivme ölçer sayesinde çarkların konumu da değişiyor.

muhendisbey

2 gündür kafa atıyorum beaglebone'a

debian yükleyeyim derken hafıza kartını görmeyen ubuntu wubi ile kurulmasına rağmen hdd tablosunu sildi. Sonuç, tonla boşa giden zaman + veri


Eğer debian'ı yükleyebilirsem veya en azından lxde o zaman ortaya birşeyler çıkabilecek.
Zulmü alkışlayamam, zalimi asla sevemem; Gelenin keyfi için geçmişe kalkıp sövemem.