Ali hocam tekrar selamlar..
şimdi D ile öğrenmeye devam ederken bir yandan GtkD ilede ufaktan dirsek temasındayım.. Sağolsun bu site sayesinde kurulum zorluğu yaşamadan problemsiz çalışabiliyorum. ancak burada birkaç derleme seçeneği ve linux ortamındaki çalışma durumlarıyla ilgili sorularım olacak
sitemiz şu: https://gtkdcoding.com/2019/03/31/x0002-gtkd-in-a-linux-environment.html
her nekadar bash alias ile derleme işlerini kısacık yazım haline getirsem bile öğrenmek adına şunları öğrenmek istiyorum (bu arada sitedeki yöntemde herhangi bir bash ile yapın diyor ama kalıcı olması için ben '.bashrc 'dosyasına kaydederek yaptım böylece bir gtkd projesini nerden derlersem derleyeyim onlarca derleyici seçenekleri yerine nerdeyse 2 komutla derlemeyi başarıyorum)
normal şartlarda site bize orada diyorki bir gtkd projesini derlemek çin şunları yaz komut satırına;
'dmd -de -w -m64 -I/usr/include/dmd/gtkd3 -L-L/usr/lib/x86_64-linux-gnu -L-L/usr/lib/i386-linux-gnu -L-l:libgtkd-3.so -L-l:libdl.so.2 -L--no-warn-search-mismatch -defaultlib=libphobos2.so <derlenecek_kod_dosyanız>.d -of<oluşacak_dosya_ismi>'
vay anam vay :-D
şimdi sorum şu; Ali hocam yazdıkarınızda kütüphane eklemelerinde '-L-l:libgtkd-3.so ' yi öğrenmiştim. '-L' ile bağlayıcıya sonraki yazılanları gönder diyorduk ve buradaki '-l' ile de bağlayıcı kardeş ben kütüphaneyim uzantıma bakma bağla beni diyorduk. Şimdi buradaki bazı bölümlerde '-L-L/usr/lib/x86_64-linux-gnu' iki adet '-L-L 'var. bu ne demektir ?
yukarıdaki soruya bağlı olarak 'L-l:libgtkd-3.so' da kullanılan ':' (iki nokta üstüste ne ifade ediyor)
Bir diğer sorum yine yukardaki derleme satırlarında '-I/usr/include/dmd/gtkd3' burada '-I 'kullanılmış yani bu da şu demek; Ey derleyici kodumuzdaki import yazan satırlar için bu klasöre bak ve derleme satırında bana iş çıkarma ve sen otomatik ekle! (sanırım :scared: ) burada '-L-l 'kullanılmamasının sebebi bu klasörde kütüphane dosyaları dışında *.d dosyaları veya *.d ilintilerinin bulunması mıdır ?
Yine başka bir soru; Sitede Ron Tarrant abimiz şöyle bir şeyler yazmış; yukarıda uzun derleme seçenekleri yerine şunuda kullanabilirsiniz arkadaşlar..
'dmd -de -w -m64 pkg-config --cflags --libs gtkd-3
<derlenecek_kod_dosyanız>.d -of<oluşacak_dosya_ismi>'
işte tam bu noktada benim sorum şu bu seçenekler nasıl oluyorda yukarıdaki uzun derleme satırları ile aynı işi yapıyor ? 'pkg-config ' '--cflag' '--lis' bunlar tam olarak ne ifade ediyor ?
teşekkürler
--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]