Yardım exeye dll bağlama ve windows üzerinde linkleme

Konu sahibi bu konuda soru soruyor. Sorusu ile ilgili bilgisi olanların yanıtlamasını bekliyor.

hasanmacit

dc: hasanmacit
Site yetkilisi
Moderatör
Premium Üye
Geliştirici
Yardımsever Üye
Mesaj
3.206
Çözümler
100
Beğeni
2.460
Puan
1.840
Ticaret Puanı
3
arkadaşlar selam. şimdi benim bir sorum olucak. mesela mainline sourceyi windowsta bağlayıp game.exeyi çalıştırmak istediğimde libmysql.dllye ihtiyaç duymuyor. şuan martysama 5.7 kullanıyorum bu da tam aksine libmysql.dll istiyor. neye göre istiyor neye göre ayarlanıyor bu dll? mesela devil.dll felanda istiyor. bu exeye bunları build aşamasında dahil etmek, bağlamak mümkün mü? ve windows üzerinde linkleme nasıl yapılır? mesela ben şuan her klasöre locale klasörünü atmak zorundayım bunun yerine bunları channellar dışında bir yere koyup ordan linkletemez miyim? yapabiliyorsam nasıl olur? cevaplar için şimdiden teşekkürler.​
 
DLL bağlantısı genellikle statik olarak yapılmaz. Bunu extern içindeki .lib dosyaları (derlenme ayarlarına göre)otomatik olarak yapar.
Mesela src içindeki devil kodlarının okunup derlenebilmesi için projeyi harici dizin olarak belirlenen /extern/lib klasörüne yönlendiriyoruz. Burada bütün libleri otomatik olarak algılıyor ve kodları tanıyıp derliyor.(granny2.lib, devil.lib vs) Ancak bu bağlama işlemi (linker) varsayılanda sadece derlenebilmeyi sağlıyor.
Ek olarak bu .lib dosyaları da kendi içlerinde .dll çağrısı yaptığı için çalışma zamanında .dll gereksinimi duyuyor.
Marty de libmysql'in lib dosyasını .dll destekli derlediği için dll istiyor doğal olarak. Bunun da sebebi marty'nin libmysql'i cliente taşımış olması olabilir, çünkü normalde server tarafında olan bir kütüphane bu.
 
DLL bağlantısı genellikle statik olarak yapılmaz. Bunu extern içindeki .lib dosyaları (derlenme ayarlarına göre)otomatik olarak yapar.
Mesela src içindeki devil kodlarının okunup derlenebilmesi için projeyi harici dizin olarak belirlenen /extern/lib klasörüne yönlendiriyoruz. Burada bütün libleri otomatik olarak algılıyor ve kodları tanıyıp derliyor.(granny2.lib, devil.lib vs) Ancak bu bağlama işlemi (linker) varsayılanda sadece derlenebilmeyi sağlıyor.
Ek olarak bu .lib dosyaları da kendi içlerinde .dll çağrısı yaptığı için çalışma zamanında .dll gereksinimi duyuyor.
Marty de libmysql'in lib dosyasını .dll destekli derlediği için dll istiyor doğal olarak. Bunun da sebebi marty'nin libmysql'i cliente taşımış olması olabilir, çünkü normalde server tarafında olan bir kütüphane bu.
anladım. peki bu windowsta dosya linkleme olayına ne diyorsun bir bilgin var mı?
 
anladım. peki bu windowsta dosya linkleme olayına ne diyorsun bir bilgin var mı?
Windows files hakkında pek bilgim yok ancak bahsettiğin her klasörün içinde sağ tıklayıp Yeni->Oluştur->Kısayol yoluyla locale klasörünün sabit olarak tutulduğu bir dizini girerek kısayol oluşturmayı deneyebilirsin. Eğer çalışırsa bir daha hepsine locale klasörünü atmana gerek kalmaz.
FreeBSD'de ki symlink gibi.
 
Windows files hakkında pek bilgim yok ancak bahsettiğin her klasörün içinde sağ tıklayıp Yeni->Oluştur->Kısayol yoluyla locale klasörünün sabit olarak tutulduğu bir dizini girerek kısayol oluşturmayı deneyebilirsin. Eğer çalışırsa bir daha hepsine locale klasörünü atmana gerek kalmaz.
FreeBSD'de ki symlink gibi.
deniyim ozaman bi
 
Geri
Üst