19 Eylül 2012 Çarşamba

Linux Yazılım Geliştirme Araçları Eğitimi


  Gömülü sistemler üzerinde çalışabilmek için önkoşul olarak pek çok uygulamayı tanımak zorundayız. Adeta işe başlamadan önce gerekli bütün alet-edevatı çantamıza koyup gerektiğinde hemen kullanabilmek üzere hazır tutmak gibi bir durumdur bu. O nedenle gömülü sistemlerde iyi ve disiplinli yazılım geliştirebilmek, geliştirdiğimiz uygulamayı analiz edebilmek ve performans testlerini yapabilmek için tanımamız gereken pek çok faydalı uygulamaya bu eğitimde yer vermekteyiz.

  Bu eğitim aynı zamanda "Embedded Linux Eğitimi" için giriş mahiyetindedir.

  • Linux İşletim Sistemine Genel Bakış
  • Geliştirme Ortamının Hazırlanması:
      autoconf, libtool, make, cmake,
      git, netbeans, meld ..
  • Dökümantasyon ve Manual Dosyaları:
      manpages, manpages-posix, manpages-posix-dev
      libstdc++6-4.4-doc
  • Derleyici ve Bağlayıcılar:
      derleme ve bağlama işlemleri   makefile ve CMakeList örnekleri
       make ve cmake kullanımı
  • Kütüphaneler:
      statik ve dinamik kütüphaneler
      kütüphane oluşturma ve kullanma
      addr2line, ar, nm, readelf, strip araçları
  • Karşılaştırma Araçları:
      cmp, diff, meld
  • IDE'ler: Eclipse, Netbeans
  • Kaynak Kod Takibi (source controllers):
      cvs, svn, perforce
      git, gitk, gitg, tig
      github, gitorious, bitbucket
  • C/C++ Kod Optimizasyonu:
      derleme ve çalışma zamanı optimizasyonları
      derleyici uyarı ve optimizasyon seçenekleri
      debug ve release modda derleme
  • Statik Kod Analizi:
      lint, cppcheck
  • Uygulama Profili Çıkarma ve Performans Analizi:
      valgrind, cachegrind, helgrind,
      perf, oprofile
  • Hata Ayıklama (debugging):
      gdb, gdbtui, gdbserver, remote debugging