Haluaisin tutkia, missä kohtaa Geditiä on eräs löytämäni ohjelmointivirhe. Olen lähettänyt avoimen lähdekoodin yhteisölle viestin asiasta, ja siellä sanottiin, että ohjelmointivirhe olisi nyttemmin korjattu. Kuitenkaan ohjelma ei toimi kunnolla, joten on kai itse käärittävä hihat ja korjattava ohjelmointivirhe itse. Ajattelin käyttää DDD:tä symbolisena virheidenetsijänä.
Kysymykseni kuuluukin, että miten lataan koneelleni sekä Geditin että GTK :n lähdekoodit ja kokoan niistä sellaisen paketin, että voin ajaa sitä symbolisella virheidenetsijällä ja näen kohdan, missä muisti alkaa vuotamaan?
Kysymykseni kuuluukin, että miten lataan koneelleni sekä Geditin että GTK :n lähdekoodit ja kokoan niistä sellaisen paketin, että voin ajaa sitä symbolisella virheidenetsijällä ja näen kohdan, missä muisti alkaa vuotamaan?
Vastaukset 3
Vanhimmat
Onko googlesi rikki, kun ainakin itse löysin samantien:
http://ftp.gnome.org/pub/gnome/sources/gedit/2.27/
http://www.gtk.org/download.html
Loppu lienee triviaalia, eli teet ihan samoin kuin muutenkin C projektien kääntämisessä ja debuggaamisessa.
Mutta jos se kerran on korjattu, niin kannattaisiko vaan kääntää tuo uusin versio ja käyttää sitä? Samalla tietysti voi sorsasta katsella josko se virhe on siellä vielä tai jos sieltä löytyisi lokiteksti bugin korjauksesta.
Olisikohan antaa aloittelijalle ohjeita, miten ohjelmien kehitysversiot saa käännettyä? Kokeilin kääntää tuota, mutta vaatii toisia paketteja, joita en saa asennettua.
user@user-desktop:~/gedit-2.27.4$ ./configure --prefix=/opt/gtk --disable-spell
...
checking for GEDIT... configure: error: Package requirements (
libxml-2.0 >= 2.5.0
glib-2.0 >= 2.18.0
gthread-2.0 >= 2.13.0
gio-2.0 >= 2.16.0
gtk -2.0 >= 2.13.0
gtksourceview-2.0 >= 2.4.0
gconf-2.0 >= 1.1.11
) were not met:
No package 'gtksourceview-2.0' found
No package 'gconf-2.0' found
Consider adjusting the PKG_CONFIG_PATH environment variable if you
installed software in a non-standard prefix.
Alternatively, you may set the environment variables GEDIT_CFLAGS
and GEDIT_LIBS to avoid the need to call pkg-config.
See the pkg-config man page for more details.
user@user-desktop:~/gedit-2.27.4$ sudo apt-get install libxml-2.0
Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Couldn't find package libxml-2.0
Kirjoita konsoliin ddd gedit, niin johan toimii. Tosin en tiedä, miten näkisin vuotokohdan. Valikosta Program voi valita Run, mutta miten ohjelman lähdekoodin näkee DDD:ssä ja miten ohjelma ajetaan käsky kerrallaan?