logo

Yüz Yüze Konuşmaya Ne Dersiniz?

Yaptığı her işte en güzelini yapmaya çalışan, yaratıcı, disiplinli bir ekibiz. Topluluk yönetimi, eğitim teknoloji ve robotik gibi niş konularda uzmanlıklarımız var. Birlikte neler yapabileceğimize bakmak, tanışmak, hayata katma değer sağlamak için görüşmeye ne dersiniz?
iletisim@artistanbul.io
+90 0212 251 64 37

Qt 5.0 Kütüphanesinin BlackBerry 10 Platformu için Build Edilmesi

Her şey masaüstü için geliştirdiğim bir uygulamayı BlackBerry 10 platformuna Cascades ile uyarlamak istemekle başladı.

Cascades ile  BB10 platformuna özel onlarca kullanıcı arayüz (UI) bileşeni geliyordu ve tamamı en iyi dokunmatik ekran deneyimini sunmak için özel tasarlanmıştı. Çok güçlü ve geliştirmesi zevkli bir ortam sunuyordu, ta ki işin içine OpenGL (OpenGL ES) girinceye kadar. Bu konu başlı başına bir blog yazısı ama kısaca özetleyecek olursam, Cascades ile OpenGL ES kullanmak çok pratik değil.

Şimdi gelelim yemek tarifi kıvamındaki yazımıza. Amaç, Qt 5.0 kütüphanesini BlackBerry için derleyip (build) Qt Creator ile yaptığımız uygulamamızı cihaz veya simülator üzerinde çalıştırmak. Geliştirme ortamımız MS Windows. Linux veya Mac olması içeriği değiştirmiyor, sadece komutlar farklı hatta Windows üzerinde bunu yapmak, Linux üzerinde yapmaya oranla daha zahmetli.

İşte ihtiyaç listemiz:

  1. BlackBerry Native SDK: http://developer.blackberry.com/native/download/
  2. Active State Perl 5.12 veya sonrası: http://www.activestate.com/activeperl/downloads
  3. Python 2.7 veya sonrası: http://www.python.org/download/releases
  4. MinGW, g++ 4.7 veya sonrası derleyici ile birlikte: http://sourceforge.net/projects/mingwbuilds/

Tedarik sürecimizi tamamladıktan sonra ilk adımdan başlıyoruz:

  1. BlackBerry Native SDK kuruyoruz. Kurulum detaylarına girmek istemiyorum. Konuyla ilgili blog yazımdan daha fazla detaya ulaşablirsiniz. Bundan sonra BlackBerry 10 Native SDK kurulum dizinimizi, %BNDK_PATH% ile temsil edeceğiz.
  2. Sırasıyla Perl ve Python kurulumlarını yapıyoruz. Bundan sonra %PERL_PATH% ve %PYTHON_PATH% kurulum dizinlerimizi temsil edecek.
  3. MinGW kurulumunu yapıyoruz. Kurulum  “C Compiler”, “C++ Compiler” ve “MSYS Basic System” seçeneklerini işaretliyoruz. Bknz: Resim 1
  4. MinGW kurulum dizinini ifade etmek için %MINGW_PATH% kullanacağız.
  5. QT 5.0 kütüphanesini GitHub’dan klonlamadan önce Perl, Pyhton ve GCC’nin komut satırından çalışabilmesi için Windows “Environment Variables”dan PATH ortam değişkenine her birinin kurulum dizinlerini ekliyoruz veya benim gibi önce değişken tanımlayarak da yapabilirsiniz.
qt5_build_for_bb10_step1

Resim 1

Perl için, %PERL_PATH%\site\bin ve %PERL_PATH%\bin

Python için %PYTHON_PATH% ve %PYTHON_PATH%\lib

MinGW için %MINGW_PATH%\bin

Sıra test etmeye geldi. Yönetici olarak komut satırı açıyoruz ve sırasıyla aşağıdaki komutları çalıştıryoruz.

perl -v, python, mingw32-make

Komut bulunamadı gibi bir uyarı alıyorsanız, PATH ortam değişkeni girdilerinizi kontrol edin. Ek olarak mingw için libbz2 modülünü kuracağız bunun için komut satırından

mingw-get install bzip2

6. Qt 5.0 kütüphanesi kaynak kodunu Github üzerinden klonlayıp derleyeceğiz. Ben bunu GitBash ile yapacağım. Eğer GitBash ve GitHub hakkında bir fikriniz yoksa önce https://help.github.com/articles/set-up-git sayfasına göz atmanızı tavsiye ederim. GitBash kurulu ise yine PATH ortam değişkenine %GITBASH_PATH%\bin girdisini mutlaka ama mutlaka %MINGW_PATH% girdisinden sonra ekleyin.

Kök dizininizde QT isimli bir dizin oluşturun ve bu dizin içinde GitBash uygulamasını çalıştırın. GitBash altında

komutunu verin. Dosyaların klonlaması ve indirilmesinin ardından GitBash’ı kapatın. Yönetici olarak yeni bir komut satırı açın ve qt5 dizinine konumlanın. Aşağıdaki komutu çalıştırıp, alt modülleri klonlayın.

 perl init-repository

Böylece QT 5.0 kütüphanesini alt modülleri ile birlikte GitHub üzerinden klonladık. Aslında ihtiyacımız olan alt modüller şunlar:

  1. qtjsbackend
  2. qtxmlpatterns (opsiyonel, QtQuick’de XmlListModel desteği sağlar)
  3. qtsensors (cihaz sensörlerine erişmek için, opsiyonel)
  4. qtmultimedia (ses ve video oynatmak için, opsiyonel)
  5. qtdeclarative
  6. qtgraphicaleffects (QtQuick2 özel efektleri için)
  7. qt3d (QML’de 3D sahne efektleri için)
  8. qtscript (qtquick1 modülünü kullanacaksanız gerekli)

Sadece gerekli olanları klonlamak isterseniz init-repository komutuna parametre olarak modül isimlerini geçebilirsiniz. Daha fazla bilgiye QT destek sayfalarından ulaşabilirsiniz. Şimdilik QtWebKit modülünü build etmeyeceğiz.

Alt modüllerin klonlaması tamamlandığında QT 5.0 kütüphanesini Blackerry 10 için yapılandıracağız. Bunun için aşağıdaki komutları sırasıyla çalıştırıyoruz.

 

configure.exe -opensource -confirm-license -release -xplatform blackberry-armv7le-qcc -arch arm  -nomake examples -nomake demos -no-webkit -opengl es2 -prefix c:\QT\qt5.0-BNDK
cd qtbase
mingw32-make -j
mingw32-make -j install

 

Biraz bekleyeceğiz

Artık çay mı içersiniz, kahve mi yoksa kinge dördüncü mü olursunuz, onu paşa gönlünüz bilir. Zızzzzzzzzzz…

Eeeee “sabrın sonu selamet” demişler, ama daha heyecana kapılmayalım, şimdi alt modülleri build edeceğiz. Alt modülleri build etmeye başlamadan önce bir kez aşağıdaki komutu çalıştırıyoruz. Böylece, build için kullanacağımız qmake.exe’nin yolunu göstermiş oluyoruz.

set PATH = %QT_PATH%\bin;%PATH%
Hemen peşinden her bir modül için modül alt dizinine konumlanıp aşağıdaki komutları sırasıyla çalıştıracağız.
qmake
mingw32-make -j
mingw32-make -j install

Bunu yaparken ilk üç sıralama önemli, ilk üç :

  1. qtxmlpatterns
  2. qtjsbackend
  3. qtdeclarative

Bu alt modüller QtCreator ile BlackBerry Qt 5.0 uygulaması geliştirmeniz için yeterli.

Önümüzdeki haftaki blog yazımda QtCreator ile BlackBerry uygulaması geliştirip, cihaza ve/veya simülatöre yükleyip çalıştırmayı paylaşacağım.

Volkan Kayaalp

2012-2013 yılları arasında BlackBerry'nin topluluk süreçlerinde birlikte çalıştığımız sevgili Volkan, "konsantre çamaşır suyu" gibidir. Kendisini sulandırıp sulandırıp her yerde, Java kodlamada, web geliştirme işlerinde, Python'da falan kullanabilirsiniz.

Yorum Yok

Yorum Yaz

Yorum
İsim
E-Posta
Website