From: Aykut KOÇAK (aykutkocak@superonline.com)
Date: Tue 21 Jun 2005 - 15:37:59 EEST
Merhaba,
Cevap için teşekkür ederim. Dünden beri yaptığım araştırmalardan ( gdb, valgrind, vb... ) pek birşey çıkmadı. hata libc'den kaynaklanıyo görünüyordu. Temel olarak Glib ve libc arasında bellek yönetimi ile ilgili bir karmaşa olsa gerek. sonuçta kod parçasında özellikle malloc/free parçalarını g_malloc/g_free ile değiştirdim. ( Aslında baştan öyle yazmam gerekirdi :) ) Ve sorun ortadan kalktı.
Ama yine de GLibc pek masum bir kütüphane değil. Bu yüzden thread'ler içinde GLibc fonksiyonlarını kullanmak zorunda kalabilirim.
Göreceğim...
Selamlar...
Murat ALKAN wrote:
>Merhaba,
>
>Sorunun bircok nedeni olabilir, ayni kod parcasinin baska yerlerde bu
>hatayi vermedigini soylemissiniz, buradan sorunun biraz komplike
>oldugu belli.
>
>Ben birsey goremedim, size tavsiye gdb (Gnu Debugger) kullanmaniz.
>Kisaca anlatmak gerekirse;
>* Konsola gdb <program yolu> yazin ve calistirin.
>* Gdb'nin komut satirinda 'run' yazarak programin gdb icinde
>calismasini saglayin.
>* Programin çökmesini saglayin.
>* 'bt' yazarak geriye donuk islemleri takip edin, muhtemelen hatanin
>hangi dosyada oldugunu ve nereden kaynaklandigini goreceksiniz.
>
>Gdb yerine ayni isi yapmayan ama isinize yaracak bir progam daha var; strace.
>strace <program yolu> komutunu calistirarak programin cagirdigi
>fonksiyonlari gorebilir ve program coktugunde/hata verdiginde bunu
>hangi fonksiyondan kaynaklandigi gorebilirsiniz.
>
>
>
>------------------------------------------------------------------------
>
>_______________________________________________
>Linux-programlama mailing list
>Linux-programlama@liste.linux.org.tr
>http://liste.linux.org.tr/mailman/listinfo/linux-programlama
>
>
_______________________________________________
Linux-programlama mailing list
Linux-programlama@liste.linux.org.tr
http://liste.linux.org.tr/mailman/listinfo/linux-programlama