Jump to page: 1 24  
Page
Thread overview
gtkD'nin kurulması (ikinci deneme)
Mar 11, 2010
Mengu
Mar 17, 2010
Mengu
Mar 17, 2010
Mengu
Mar 18, 2010
Mengu
Mar 18, 2010
Mengu
May 08, 2010
white rabbit
Mar 13, 2011
mert
Mar 13, 2011
mert
Oct 28, 2011
mert
Nov 01, 2011
zafer
Nov 01, 2011
mert
XML tabanlı dosya sistemi
Nov 01, 2011
zafer
Nov 02, 2011
zafer
Nov 03, 2011
zafer
Nov 04, 2011
zafer
March 09, 2010

Alıntı:

>

gtkD'nin dmd'nin şu sürümleriyle derlenemediğini biliyoruz: 2.038, 2.039, ve 2.040. Herhalde 2.041 ile de derlenemiyordur; çünkü inout belirtecinin anlamı değişmişti.

Svn'den edinirseniz derleyebilirsiniz.

En azından ben dmd 2.040 ve 2.041 ile derleyebildim :-) Ve sanırım daha önce çalışmamasının sebebini de buldum.
Ben svn kayıtlarında 2.040 için düzenlendi sözünü duyunca 2.040 ile derlemeye çalıştım ama indirdiğim sürüm eski olan 1.3.2 eski bir sürüm. En güncel için svn ile edindim ve şuan taş gibi çalışıyor sayılır :-)

Ama ne yazık ki sizin belirttiğiniz hata bende de oldu. Belki örnekte kodlanırken yanlış kodlanmıştır. Aslında hata kaydı açmak gerekir, yada forumunda sormak ?

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]

March 08, 2010

gtkD'yi dsss ile kurmaya debelendikten sonra, dizinde bir de GNUmakefile dosyası olduğunu farkettim. Yani dsss'ye gerek olmadan da kuralabiliyormuş! :) Buna rağmen neden dsss'yi önerdiklerini anlamış değilim. (?)

Adımlar:

  1. Sisteminizde gtk kurulu olmalı

Sisteminizde gtk'nin kurulu olduğundan emin olun. Benim denediğim xubuntu 9.10'da zaten var. Eğer gtk kurulu değilse, sisteminizin paket yöneticisi ile kurun. (Tam olarak hangi paketlerin olduğunu bilmiyorum ama yeni sistemlerde kurulması bile gerekli olmamalı. En azından xubuntu'da kurulu olarak geliyor.)

  1. dmd'nin kurulması

gtkD'nin dmd'nin şu sürümleriyle derlenemediğini biliyoruz: 2.038, 2.039, ve 2.040. Herhalde 2.041 ile de derlenemiyordur; çünkü 'inout' belirtecinin anlamı değişmişti.

O yüzden, ilk adım olarak dmd 2.037'yi kurun.

2a) Şuradan indirin:

http://ftp.digitalmars.com/dmd.2.037.zip

2b) Şuradaki adımları izleyerek kurun:

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

  1. gtkD'nin kurulması

3a) Şu adresten indirin ve istediğiniz bir dizine açın (örneğin ~/gtkD):

http://dsource.org/projects/gtkd

3b) O dizine geçin ve make'i çalıştırın:

cd ~/gtkD
make
sudo make install

Sanırım hepsi o kadar! :)

gtkD dizininde bir test programı oluşuyor:

~/gtkD/TestWindow

Çalıştırdığınızda bir çok gtk olanağını gösteren bir program açılıyor.

Uyarı: Programın Threads sekmesi herhalde doğru çalışmıyor; çünkü Stop düğmesine basınca sanki çalışmaya devam ediyor. Bir deneme programı olduğu için, belki de Stop düğmesi zaten bir şey yapmıyordur. Bir de Idle sekmesinde oynarken sistemin kilitlendiği oldu. Neden olduğunu tahmin bile edemeyeceğim. :)

Ali

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]

March 09, 2010

Şuan kendim bir gtk uygulaması derlemeye çalıştım ve ne yazık ki derleyemedim.

deneme.d dosyam:

import gtk.MainWindow;
import gtk.Label;
import gtk.Main;

void main(string[] args)
{
	Main.init(args);
	MainWindow win = new MainWindow("Hello World");
	win.setDefaultSize(200, 100);
	win.add(new Label("Hello World"));
	win.showAll();

	Main.run();
}

derlemek için verdiğim komut :


dmd deneme.d libgtkd.a

Verdiği hata :



deneme.d(1): Error: module MainWindow cannot read file 'gtk/MainWindow.d'

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]

March 09, 2010

Alıntı:

>

dmd deneme.d libgtkd.a -I~/gtkD/src/

Burada dediğiniz gibi bağlayıcı hatası verdi.
Alıntı:

>

dmd deneme.d libgtkd.a -I~/gtkD/src/ -L-lDD-gtk

Ama burada şöyle bir hata verdi:


/usr/bin/ld: cannot find -lDD-gtk
collect2: ld returned 1 exit status
--- errorlevel 1


--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]

March 09, 2010

Benimkide çalıştı. Çok güzel, hiç bir gui'yi bu kadar çok sevmemişimdir. Hatta ilk kez çalıştırdığım gui bile buna dahil.

Şu D emin adımlarla benim istediğim programlama dili kıvamına geliyor :-)

Şuan web için mi kullansam, gui için mi, yoksa konsol yeter mi diye istediğimi diyebiliyorum :-)

Ayrıca bir std.path modülü ile yazılımın büyük bir kısmını bağımsız yazabiliyorum.

Ama şu kodda derleyice verdiğimiz komutların anlamını bilmek isterim:



~/deneme/d$ dmd deneme.d -I~/gtkD/src -L-ldl -L-L~/gtkD/src -L-lgtkd

Ayrıca şuana kadar tek sıkıntım nyp'de opCast gibi şeylerde o da gülün dikeni :-)

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]

March 09, 2010

Şu anda tam çözümüne bakamıyorum ama büyük olasılıkla dmd'ye '-I' (büyük i) seçeneği ile gtk dizininin nerede olduğunu söylemen gerekiyor. Örneğin:

'dmd deneme.d libgtkd.a -I~/gtkD/src/'

Ondan sonra da bağlayıcı hatası alabilirsin. O zaman da '-L-l' (ikincisi küçük L) ile kütüphane dosyasını göstermen gerekebilir:

'dmd deneme.d libgtkd.a -I~/gtkD/src/ -L-lDD-gtk'

'.a' kütüphane dosyalarını da aynı dizinde görüyorum: '~/gtkD/src/'

Umarım bu kadarı yeter. Zaman bulunca sonra yine yazacağım.

Ali

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]

March 09, 2010

Çalıştı! :)

~/deneme/d$ dmd deneme.d -I~/gtkD/src -L-ldl -L-L~/gtkD/src -L-lgtkd
~/deneme/d$ ./deneme

Ali

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]

March 09, 2010

Benim de bayağı hoşuma gitti. :)

Dün akşam QtD ile de uğraşmaya başladım ama Qt o kadar büyükmüş ki, daha onun kurulumu anca bitti! :) Tanıtım programları harika ama. Qt'yi daha önceden biliyordum ama bu kadar gelişmiş olduğunu tahmin bile edemezdim. (Gerçi belki onun rakipleri de öyledir; ben görsel konulara uzağım.)

'-I', "import edilen" modül dosyaları için hangi dizinlere bakılacağını belirtir; dmd onlar için oralara da bakar. '-I', C ve C++'da da standarttır ve onlarda da "#include edilen" başlık dosyalarının nerede bulunacağını bildirir.

'-L', dmd'nin hiç ilgilenmeden doğrudan bağlayıcıya geçirdiği seçenekleri belirtir. Seçeneklerin ayrı ayrı belirtilmeleri yerine, tek bir seçenek olarak ve belki de çift tırnaklarla '-L'"..." gibi belirtilebilmelerini beklerdim ama öyle yapmamışlar.

dmd'nin '-L' seçeneği ile bağlayıcının '-L' seçeneğini karıştırmamak gerekir. Yukarıdaki komutta dmd'nin geçirdiği iki farklı bağlayıcı seçeneği var:

  1. Bağlayıcının '-L' seçeneği, kütüphane dosyaları için hangi dizine bakılacağını bildirir

  2. Bağlayıcının '-l' seçeneği, kütüphane dosyasının kısa ismini belirtir. Bağlayıcı, kısa ismin başına 'lib', sonuna da '.a' yerleştirir. Yani '-ldl', "libdl.a kütüphane dosyası ile bağla" anlamına gelir. (dl, "dynamic loader" (belki de "linking" (?)) kütüphanesidir ve /usr/lib'de bulunur)

Ali

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]

March 11, 2010

abi qt'nin d bindingi saniyorum en mukemmel qt olayi olmus. python bindingi bile o kadar can sikici ve bunaltici ki, suradakiler http://www.dsource.org/projects/qtd/browser/examples/mainwindows/dockwidgets/mainwindow.d ne kadar guzel geldi gozume..

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]

March 12, 2010

QtD'nin kurulmasını ayrı bir konu olarak açtım. Neredeyse olacak! :) Benim 8G seçtiğim sanal makine diski yetmedi.

Ali

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]

« First   ‹ Prev
1 2 3 4