Symbolisen virheidenetsijän käytöstä

Matikkamies

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?

3

570

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • dx2

      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.

      • Kääntäjä

        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


      • Matikkamies
        Kääntäjä kirjoitti:

        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?


    Ketjusta on poistettu 0 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. YLE Äänekosken kaupunginjohtaja saa ankaraa arvostelua

      Kaupungin johtaja saa ankaraa kritiikkiä äkkiväärästä henkilöstöjohtamisestaan. Uusin häirintäilmoitus päivätty 15 kesä
      Äänekoski
      84
      1646
    2. Euroopan lämpöennätys, 48,8, astetta, on mitattu Italian Sisiliassa

      Joko hitaampikin ymmärtää. Se on aivan liikaa. Ilmastonmuutos on totta Euroopassakin.
      Maailman menoa
      269
      1551
    3. Asiakas iski kaupassa varastelua tehneen kanveesiin.

      https://www.iltalehti.fi/kotimaa/a/33a85463-e4d5-45ed-8014-db51fe8079ec Oikein. Näin sitä pitää. Kyllä kaupoissa valtava
      Maailman menoa
      271
      1288
    4. Martina lähdössä Ibizalle

      Eikä Eskokaan tiennyt matkasta. Nyt ollaan jännän äärellä.
      Kotimaiset julkkisjuorut
      169
      1262
    5. Avustikset peruttu.

      Aettokosken ampuraan rahat otettu poekkeen valtiolle.
      Suomussalmi
      56
      877
    6. 66
      854
    7. Jos ei tiedä mitä toisesta haluaa

      Älä missään nimessä anna mitään merkkejä kiinnostuksesta. Ole haluamatta mitään. Täytyy ajatella toistakin. Ei kukaan em
      Ikävä
      65
      843
    8. Miksi mies tuntee näin?

      Eli olen mies ja ihastuin naiseen. Tykkään hänestä ja koskaan hän ei ole ollut minulle ilkeä. Silti ajoittain tunnen kui
      Ikävä
      40
      831
    9. Määpä tiijän että rakastat

      Minua nimittäin. Samoin hei! Olet mun vastakappaleeni.
      Ikävä
      40
      817
    10. Se nainen näyttää hyvältä vaikka painaisi 150kg

      parempi vaan jos on vähän muhkeammassa kunnossa 🤤
      Ikävä
      44
      791
    Aihe