geri

Pardus+GP2X

06/09/2007

Yazıyı indir: Pardus+GP2X.pdf
Pardus+GP2X.odt

Bu yazının amacı GP2X için yazılım geliştirmek isteyen fakat nereden başlaması gerektiğini bilmeyen geliştiricilere yardımcı olmaktır. Ayrıntılı bilgilerden öte bu yazıda, gerekli bilgilere nereden ve nasıl ulaşabileceğiniz sorularına yanıt vermeye ve sizler için kapıyı aralamaya çalıştım. Sorularınızı bana gönderebilir ya da çok daha iyisi http://forum.gp2xtr.com/ adresindeki GP2X Türkiye Forumlarına yazabilirsiniz. Bunun yanında aradığınız cevap belki de http://wiki.gp2xtr.com adresinde çoktan yerini almıştır.

GP2X için kod yazmaya başlamadan önce bence ilk işimiz geliştirme makinası üzerinde kullanacağımız işletim sistemini seçmek olmalı. Windows mu kullanmalıyız yoksa bir Linux dağıtımı mı? Ya da [[MacOS]] mu? Bu sorunun cevabını vermek benim gibi Windows sistemler üzerinde yalnızca çile çekmiş; baskıya, dayatmalara karşı duran; kendine özgü olarak değiştirebildiği, geliştirebildiği sistemleri tercih eden ve MacOS sistemleri zorunlu olmadıkça uzaktan seyretmekle yetinmiş biri için oldukça kolay. Ancak yine de Windows fanatikleri için mantıklı bir cevap bulmak gerekiyor. Þurası açık ki GP2X üzerinde Linux çekirdeği çalıştığı için elbette ki geliştirme yapılan sistemin de Linux tabanlı olması geliştirme ve test açısından daha verimli olacaktır. Ayrıca Linux için pek çok açık kaynak araç bulunması da biz geliştiricilere büyük kolaylık sağlıyor. Hatta benim en sevdiğim özellik bu araçlar üzerinde değişiklikler yapabiliyor olmak. Örneğin Code::Blocks editörü üzerinde ihtiyaç duyduğum değişiklikleri yaptıktan sonra "Code::Blocks Canavar Edition" adıyla kullanmak beni dünyanın en mutlu insanı yapıyor. Çünkü bahsettiğim editörün bu halini tüm evrende kullanan tek insan benim ve bu durum beni bütün insanlar arasında özel kılıyor.

Linux kullanacağımıza biraz emrivaki de olsa karar verdiğimize göre şimdi sıra şu can alıcı soruya geliyor: Hangi Linux dağıtımını seçmeli? Elimizde pek çok seçenek olması seçim yapmayı oldukça zorlaştırıyor. Uzun zaman [[Fedora Core]] kullanmış ben için yanıt bu sefer aynı dağıtım olmayacak. Ben bu konuda tüm ihtiyaçlarımı fazlasıyla karşıladığı için, biraz da milliyetçilik yapıp [[Pardus]] dağıtımını seçtim.

Pardus'u http://pardus.org.tr'den indirip kuruyoruz. Bu noktada Pardus ile ilgili bir kaç yararlı bağlantı vermeden de geçmeyeyim.

1.http://gezegen.pardus.org.tr/
2.http://tr.pardus-wiki.org/
3.http://www.ozgurlukicin.com/
4.http://www.pardus-oyun.org/

Evet artık canavar gibi çalışan bir işletim sistemimiz var. Yeni sistemimizin orasıyla burasıyla oynamak elbette ki çok zevkli. Ama çok fazla zaman kaybetmeden yeni görevimiz olan GP2X için bir SDK(Software Development Kit) kurmaya başlamamız gerek. Önce http://wiki.gp2xtr.com/ adresine bir göz atalım. Burada Yazılım Geliştirme kısmında Linux bağlantısına tıklıyoruz. Açılan sayfada gelen öneriler arasından ben pek çok kütüphaneyi içinde barındıran Oopo's DevKit'i tercih ettim(Saygılar Oopo). http://archive.gp2x.de/cgi-bin/cfiles.cgi?0,0,0,0,14,1609 adresinden bu SDK'yı indiriyoruz. Ýndirdiğimiz dosyayı açtığımızda elimizde 2 klasör olacak. Önce toolchain klasörüne giriyoruz. Buradaki readme.txt dosyasında yazanları yapınca toolchain'imiz(Ekşi sözlükten detached der ki; yazilim dunyasinda belli bir urunu gelistirmek icin kullanilan araclar grubuna bu adi veririz. ornek olarak editor, compiler, linker ve hedef platforma yonelik temel kutuphaneler. [Canavar'dan not: Genelde toolchain ile beraber bir editor gelmez.]) kurulmuş olacak. Ancak bu işlemleri yapmadan önce

[code] export LC_ALL=en_US [/code]

yazmak zorundayız(Niye? Konsolda dil problemini çözmek için...). Toolchain'i kurduktan sonra sıra kütüphaneleri kurmaya geliyor. lib klasörünün içinde bulunan readme.txt dosyasında anlatılanları yaptığımızda bu işlem de bitmiş olacak. Bu yazıyı yazarken o readme dosyalarını silmiş olduğum için ayrıntılı bir açıklama yapamıyorum. Ama giriş seviyesinde İngilizce'si olanlar için orada anlatılanları yapmanın çok zor bir iş olacağını düşünmüyorum. Yalnızca SDK'yı /gp2xdev klasörüne kurmanızı tavsiye ederim.

SDK'mızı kurduktan sonra yanıt aramamız gereken bir soru ile daha karşılaşıyoruz: Hangi editörü kullanacağız? Bu soruya benim verdiğim cevap VI ( http://www.vim.org/ ). Bu editörün sağladığı kolaylığın ne kadar büyük olduğunu bildiğim kadar acemilere verdiği ızdırabın büyüklüğünü de iyi biliyorum. Bu yüzden Code::Blocks (http://www.codeblocks.org) ya da CDT plugini (http://www.eclipse.org/cdt/) ile Eclipse(http://www.eclipse.org/ ) sizler için daha iyi bir çözüm olabilir.

SDK'mızı kurduktan sonra sıra artık bir test uygulaması yazmaya geliyor. Ancak bu uygulama her ne kadar basit olsa da [[SDL]], SDL_image, libpng, libjpeg ve libz kütüphanelerinin kullanılabilirliğini de test etmeli. Bu noktada Oopo abimizden bir miktar daha yardım alıyoruz (http://www.oopo.net/consoledev/). Kendisi SDL, SDL_ttf ve SDL_mixer kütüphanelerinin portlarını test etmek için bir test uygulaması yazmış. Ben de bu test uygulamasından yola çıkarak libpng, libjpeg ve libz kütüphanelerini de test eden küçük bir uygulama yazdım. Bu uygulamayı örnek resim ve ses dosyaları ile birlikte http://fehmicans.net/joomla/source/sdl-tester.tar.gz adresinden indirebilirsiniz.

SDL kütüphanesinin İngilizce dokümantasyonuna http://www.libsdl.org/docs.php adresinden ulaşılabilir. Ya da “Ben İngilizce doküman istemem, Türkçe olanı yok mu bunun?” derseniz ragnor(http://ozanemirhan.blogspot.com/) kardeşimizin yazmış olduğu http://www.geocities.com/ragnor_whr/sdl_doc.txt bağlantısından indirebileceğiniz doküman isteğinizi fazlasıyla karşılayacaktır.

Follow me on Twitter