Forum: D Programlama Dili RSS
GtkD 3 Kurulumu
Sayfa:  1  2  sonraki 
nurullahisrgan #1
Üye Ock 2015 tarihinden beri · 76 mesaj · Konum: Mardin, Nusaybin
Grup üyelikleri: Üyeler
Profili göster · Bu konuya bağlantı
Konu adı: GtkD 3 Kurulumu
    Eğer D ile GUI programlamak ve GtkD'yi kullanmak istiyorsanız, şu an doğru adrestesiniz. Bu yazıda GtkD-3 kurulumunu ve derleme işlemlerini anlatacağım. Kurulumu ben Linux üzerinden denedim, herhalde Windows üzerinden de kurulumu basitçe yapabilirsiniz. Basitçe adımlar halinde yazayım:

1. Dmd Kurulu Olmalı
    GtkD modüllerini ve kütüphanelerini kullanmak için dmd kurulu olmalıdır. Tabii, eğer oluyorsa siz Gdc ve Ldc'yi de kullanabilirsiniz. GtkD kurulumu için dmd 2.0.66 ve üstü bir sürüm kullanılmalıdır.

Dmd'yi kurmak için aşağıdaki adrese bakabilirsiniz:

http://ddili.org/kurulum/dmd.html

2. GtkD-3'ün Kurulumu
    Kaynak kod dosyalarını aşağıdaki adreslerden birinden indirin ve bir dizine açın.

http://d-apt.sourceforge.net/
http://gtkd.org/download.html

    Dosyaları kopyaladığınız dizine geçin ve aşağıdaki komutları sırasıyla girin:

cd /GtkD'nin/Kurulu/Olduğu/Dizin
make all
sudo make install


    Bu komutları bitene kadar bekleyin ve aşağıdaki komut ile TestWindow isimli programın çalıştığından emin olun:

./TestWindow

    Komut satırı, warning'li falan konuşabilir, siz aldırmayın ona... Aşağıdaki resimlere bakarak dosyaların dizinlere doğru bir şekilde kurulduğuna ve GtkD 3'ü yüklediğinize emin olun:

http://s3.dosya.tc/server5/la3npg/kurulumsonrasi.zip.html

    Dosyaları kendinizkilerle karşılaştırın ve eksik bir yer var ise söyleyebilirsiniz.

3. İlk GtkD Programı - "Merhaba Dünya"
    Bir dosya açalım ve aşağıdaki satırları kopyalayım.

import gtk.Window;
import gtk.Main;

int main(string[] parametre)
{

   Main.init(parametre);
   auto İlkPencere = new Window("Merhaba Dünya");
   İlkPencere.show();
   Main.run;

   return 0;
}


    Bu satırları kopyaladıktan 4. adıma geçebiliriz...

4. Derleme İşlemi
    Bir konsol açarak, yukarıdaki kodu yazdığımız dizine gidin. Daha sonra aşağıdaki satırı kopyalayın. Kaynak dosya adını "Merhaba.d" olarak varsayacağım.

dmd Merhaba.d -I/usr/local/include/d/gtkd-3/ -ofMerhaba -L-lgtkd-3 -L-ldl -L-Llibphobos2.so

    Bu işlemden sonra bulunduğunuz dizinde "Merhaba" isimli bir program oluşacaktır. Bu dosyaya çift tıklayarak çalıştırabilirsiniz.

4.1 Derleme Komutlarını Azaltma
    Bu aşamda, derleme işlemini her seferinde daha az komut kullanarak nasıl yazacağımızı göstereceğim. Sonunda 4 komut dışında hiçbir şey kullanmayağız.
    Bu işlem için, öncelikle GtkD modüllerinin nerede olduğunu bilmelisiniz. Eğer, yukarıdaki derlemeye göre gittiyseniz; modüller /usr/local/include/d/gtkd-3/ dizini içindedirler.
    Linux kullanıyorsanız, uçbirime geçip şu komutu verin:

sudo gedit /etc/dmd.conf

    Siz kullandığınız metin düzenleme programını yazın. Gedit, her Linux dağıtımında kurulu olarak gelmemektedir. Bu dosyanın yedeğini mutlaka alın. Bir hata yaptığınızda, müdahele etmemiz kolay olsun... :-)
    Karşınıza bir dosya gelecek ve şu satır aralıklarını aşağıdaki şekilde değiştirin:

[Environment32]
DFLAGS=-I/usr/include/dmd/phobos -I/usr/include/dmd/druntime/import -L-L/usr/lib/i386-linux-gnu -L--export-dynamic

[Environment64]
DFLAGS=-I/usr/include/dmd/phobos -I/usr/include/dmd/druntime/import -L-L/usr/lib/x86_64-linux-gnu -L--export-dynamic

    Bu satırlar dmd'nin belirlediği standart derleme işleminde kullanılacak dosyaları ayarlamaktadır. Bu satırları silip aşağıdaki satırları yerine kopyalayın:


[Environment32]
DFLAGS=-I/usr/include/dmd/phobos -I/usr/include/dmd/druntime/import -I/usr/local/include/d/gtkd-3 -L-lgtkd-3 -L-lgtkdgl-3 -L-lgtkdsv-3 -L-ldl

[Environment64]
DFLAGS=-I/usr/include/dmd/phobos -I/usr/include/dmd/druntime/import -I/usr/local/include/d/gtkd-3 -L-lgtkd-3 -L-lgtkdgl-3 -L-lgtkdsv-3 -L-ldl

    Kaydedip dosyayı kapatın. Çoğu GtkD programlarını artık aşağıdaki işlemle yapabilirsiniz:

dmd Merhaba.d -ofMerhaba

    Birden fazla D dosyasını işlemek için ise yine aynı yolu izleyeceğiz:

dmd İlkDosya.d İkinciDosya.d ÜçüncüDosya.d NDosya.d -ofProgramİsmi

    Çoğu durumda -of komutunu da kullanmaya gerek kalmayabilir. Yazı bu kadarlıktır. Sanırım bazı yerleri anlaşılır yazamadım. O yerleri söylerseniz düzenlerim... :-)  :-)
    Hata yaptıysanız söyleyebilirsiniz, ben elimden geldiğince yardım ederim.
zafer #2
Üye Tem 2009 tarihinden beri · 700 mesaj · Konum: Ankara
Grup üyelikleri: Üyeler
Profili göster · Bu konuya bağlantı
Öncelikle eline sağlık, bir forum konusu olması güzel ancak üzerinde biraz daha çalışıp bir makale haline getirebilirsen bence makaleler bölümünde bulunması daha güzel olur.

Ayrıca kod blokları için <kod> etiketlerini kullanırsan yazı daha derli toplu ve düzgün görünür. Tekrardan eline sağlık.
https://github.com/zafer06 - depo
nurullahisrgan #3
Üye Ock 2015 tarihinden beri · 76 mesaj · Konum: Mardin, Nusaybin
Grup üyelikleri: Üyeler
Profili göster · Bu konuya bağlantı
zafer:
Öncelikle eline sağlık, bir forum konusu olması güzel ancak üzerinde biraz daha çalışıp bir makale haline getirebilirsen bence makaleler bölümünde bulunması daha güzel olur.

Ayrıca kod blokları için <kod> etiketlerini kullanırsan yazı daha derli toplu ve düzgün görünür. Tekrardan eline sağlık.

öneriniz için teşekklürler. Konuyu en yakınj zamanda daha anlaşılır ve daha iyi yapmaya gayret edeceğim.
canalpay (Moderatör) #4
Kullanıcı başlığı: Can Alpay Çiftçi
Üye Tem 2009 tarihinden beri · 1133 mesaj · Konum: İzmir
Grup üyelikleri: Genel Moderatörler, Üyeler
Profili göster · Bu konuya bağlantı
Zamanında bende gtkD'ye biraz bakmıştım. O zaman Gtk2 vardı. Orda gtk'nin bir kaç özelliğini ders olarak Mengü'nün ve Ali'nin yardımıyla ders haline getirmiştim: http://ddili.org/ders/gtkd/index.html

Belki makale yerine orayı güncel bilgilerle güncelleyip ilerletebilirsin.
acehreli (Moderatör) #5
Kullanıcı başlığı: Ali Çehreli
Üye Haz 2009 tarihinden beri · 4527 mesaj
Grup üyelikleri: Genel Moderatörler, Üyeler
Profili göster · Bu konuya bağlantı
İyi fikir! :) ddili.org projesi Bitbucket'ta:

  https://bitbucket.org/acehreli/ddili

GtkD kitabı şu klasörde:

  https://bitbucket.org/acehreli/ddili/src/43e99bb…?at=mas…

Ali
zafer #6
Üye Tem 2009 tarihinden beri · 700 mesaj · Konum: Ankara
Grup üyelikleri: Üyeler
Profili göster · Bu konuya bağlantı
Konuyu biraz değiştireceğim, kusura bakmayın ama Wiki ne alemde, wikiye ekleme yapabiliyormuyuz.
https://github.com/zafer06 - depo
acehreli (Moderatör) #7
Kullanıcı başlığı: Ali Çehreli
Üye Haz 2009 tarihinden beri · 4527 mesaj
Grup üyelikleri: Genel Moderatörler, Üyeler
Profili göster · Bu konuya bağlantı
Wiki'nin fişi çekili durumda çünkü spam'le başa çıkamamıştık.

Ali
nurullahisrgan #8
Üye Ock 2015 tarihinden beri · 76 mesaj · Konum: Mardin, Nusaybin
Grup üyelikleri: Üyeler
Profili göster · Bu konuya bağlantı
Yanıtlanan mesaj #4
canalpay:
Zamanında bende gtkD'ye biraz bakmıştım. O zaman Gtk2 vardı. Orda gtk'nin bir kaç özelliğini ders olarak Mengü'nün ve Ali'nin yardımıyla ders haline getirmiştim: http://ddili.org/ders/gtkd/index.html

Belki makale yerine orayı güncel bilgilerle güncelleyip ilerletebilirsin.

GtkD'ye oradan başladım. Devamını doc belgesini çevirerek ve kaynak kod inceleyerek anlamaya çalışıyorum. Orayı güncellerim ancak henüz GtkD'ye yeni başladım.
zafer #9
Üye Tem 2009 tarihinden beri · 700 mesaj · Konum: Ankara
Grup üyelikleri: Üyeler
Profili göster · Bu konuya bağlantı
Bende GtkD ile çalışırken şu adres (https://sites.google.com/site/gtkdtutorial/) çok işime yaramıştı. Belki sende faydasını görürüsün.

Wiki'nin fişi çekili durumda çünkü spam'le başa çıkamamıştık.

Wikinin aktif olmasını isterdim, bir şeyler üretmek için uygun olduğunu düşünüyorum.
https://github.com/zafer06 - depo
cos00kun #10
Üye Kas 2014 tarihinden beri · 104 mesaj
Grup üyelikleri: Üyeler
Profili göster · Bu konuya bağlantı
bence farketmez Wiki olmuş olmamış... Zaten öncelikli sorunlara bakıldığında daha o kadar yol varki wikiye zor sıra gelir :) Ben yeni başladım D programlamaya zaten Programcılıktada çok ileri olduğum söylenilemez ancak gördüğüm kadarıyla ve haklı! olarak C, C++ gibi dillerle kıyasladığımda benim gördüğüm daha çok yol var :) henüz geriye dönük uyum sorunlarrı bile doğru düzgün aşılamamışken sırf umut vaad ediyor diye herşey mükemmel olamıyor maalesef :) umarım istedikleriniz tez vakitte olur ama ben Artık D diyorum başka bişey demiyorum.. Bakalım hayırlısı olur İnşallah..
E=mc^2
nurullahisrgan #11
Üye Ock 2015 tarihinden beri · 76 mesaj · Konum: Mardin, Nusaybin
Grup üyelikleri: Üyeler
Profili göster · Bu konuya bağlantı
Yanıtlanan mesaj #9
zafer:
Bende GtkD ile çalışırken şu adres (https://sites.google.com/site/gtkdtutorial/) çok işime yaramıştı. Belki sende faydasını görürüsün.

Wiki'nin fişi çekili durumda çünkü spam'le başa çıkamamıştık.

Wikinin aktif olmasını isterdim, bir şeyler üretmek için uygun olduğunu düşünüyorum.

Orayı dün görmüştüm. Çevirip okumaya başaladım.
nurullahisrgan #12
Üye Ock 2015 tarihinden beri · 76 mesaj · Konum: Mardin, Nusaybin
Grup üyelikleri: Üyeler
Profili göster · Bu konuya bağlantı
Yanıtlanan mesaj #5
acehreli on 2015-10-20, 12:00:
İyi fikir! :) ddili.org projesi Bitbucket'ta:

  https://bitbucket.org/acehreli/ddili

GtkD kitabı şu klasörde:

  https://bitbucket.org/acehreli/ddili/src/43e99bb…?at=mas…

Ali

İnşallah GtkD derslerini devam ettirebilirim.
agora #13
Üye Tem 2013 tarihinden beri · 221 mesaj
Grup üyelikleri: Üyeler
Profili göster · Bu konuya bağlantı
GtkD 3 için bir bash script hazırladım galiba. Ama bakalım bende gnome 3 yüklü değil. Test edecek arkadaşlar var ise bash scripti kendilerine verebilirim.

Kurulum scripti yukarıdaki yönergelere göre hazırlandı. dmd.conf dosyası da dahil. Ne olur ne olmaz diye dmd.conf dosyasının bir yedeğini de alıyor script. Aynı dizinde dmd.conf.backup adı ile.

Yani

dmd dosya.d -ofDosya

ile direkt derleyebilirsiniz.

Çalışıyor mu diye deneyin yani bir bakın:

Düzenleme

https://gist.github.com/aligoren/9805f9e250afd34b84f4

Ve çalışıyor yuppi :) Örnekler aşağıda: (Bu script eğer sizlerde de çalışıyor ise isterseniz d forumunda falan paylaşabiliriz). Ancak indirme dosyası henüz statik. Bash ile onu nasıl parçalarım bilemiyorum. Özellikle bir class verilmemiş html taglerine.

[Resim: http://i.hizliresim.com/PB2NL9.png]

[Resim: http://i.hizliresim.com/PB2zp8.png]

[Resim: http://i.hizliresim.com/gyvRnN.png]

[Resim: http://i.hizliresim.com/ZJjRLg.png]

[Resim: http://i.hizliresim.com/7PWZYl.png]
Bu mesaj 2 defa değişti; son değiştiren: agora; zaman: 2015-11-02, 06:48.
acehreli (Moderatör) #14
Kullanıcı başlığı: Ali Çehreli
Üye Haz 2009 tarihinden beri · 4527 mesaj
Grup üyelikleri: Genel Moderatörler, Üyeler
Profili göster · Bu konuya bağlantı
Eline sağlık! Bir kütüphane kullanabilmek için derleyicinin ayarlarını değiştirmek biraz garip olsa da işe yaradığı sürece sorun yok. :)

Örneğin, make kullanan bir programda Makefile'a iki ek yapmak yeter. dub'da da öyledir herhalde.

Ali
agora #15
Üye Tem 2013 tarihinden beri · 221 mesaj
Grup üyelikleri: Üyeler
Profili göster · Bu konuya bağlantı
GtkD forumuna da ekledim. Header infosu eklemedim. Anonim olsun çalışsın diye isterseniz ddili.org ekleyebilirim.

Scripti deneme şansınız olursa geri bildirimde bulunur musunuz hocam?
Doğrulama Kodu: VeriCode Lütfen resimde gördüğünüz doğrulama kodunu girin:
İfadeler: :-) ;-) :-D :-p :blush: :cool: :rolleyes: :huh: :-/ <_< :-( :'( :#: :scared: 8-( :nuts: :-O
Özel Karakterler:
Sayfa:  1  2  sonraki 
Bağlı değilsiniz. · Şifremi unuttum · ÜYELİK
This board is powered by the Unclassified NewsBoard software, 20100516-dev, © 2003-10 by Yves Goergen
Şu an: 2017-11-19, 04:24:09 (UTC -08:00)