Paketin kääntöongelma

Discussion in 'Linux -keskustelu' started by excalib, May 2, 2005.

  1. excalib

    excalib Member

    Joined:
    May 2, 2005
    Messages:
    35
    Likes Received:
    0
    Trophy Points:
    16
    Asensin SuSE Linux 9.2:n koneelleni ja aloin tutkailemaan miten tätä ihmettä käytellään. Linux-kokemusta ei ennestään paljoa ole, joten saa vääntää rautalangasta, jos on tarvista.

    Ihan perusongelmaan törmäsin. Kun yritin kääntää konsolilla itselleni soitto-ohjelmaa(xmms:ää), niin ilmeisesti tein jotain väärin, kun virheilmoitusta tulee rutuun. Tiedän kyllä, että Yastilla olisi helpoin asentaa, mutta haluan opetella jo valmiiksi tuon kääntämisen, kun sitä varmasti tarvitsee jossain vaiheessa.

    Purin tar.gz-paketin ja sieltä tuli sekalainen joukko tavaraa ulos. Sitten yritin käyttää komentoa ./configure (se kai se aluksi pitää suorittaa?), mutta tulokseksi tuli ensin c-kääntäjän puutteesta herjaaminen. Asensin C-kääntäjän Yastilla. Sen jälkeen pukkasi toisen virheilmoituksen ja tuosta en enää tajua riittävästi:

    checking build system type... i686-pc-linux-gnu
    checking host system type... i686-pc-linux-gnu
    checking for a BSD-compatible install... /usr/bin/install -c
    checking whether build environment is sane... yes
    checking for gawk... gawk
    checking whether make sets $(MAKE)... yes
    checking for prefix by checking for xmms... no
    checking for gcc... gcc
    checking for C compiler default output... a.out
    checking whether the C compiler works... yes
    checking whether we are cross compiling... no
    checking for suffix of executables...
    checking for suffix of object files... o
    checking whether we are using the GNU C compiler... yes
    checking whether gcc accepts -g... yes
    checking for gcc option to accept ANSI C... none needed
    checking for style of include used by make... GNU
    checking dependency style of gcc... gcc3
    checking for strerror in -lcposix... no
    checking whether byte ordering is bigendian... no
    checking for inline... inline
    checking for an ANSI C-conforming const... yes
    checking for a BSD-compatible install... /usr/bin/install -c
    checking whether ln -s works... yes
    checking whether make sets $(MAKE)... (cached) yes
    checking for ld used by GCC... /usr/i586-suse-linux/bin/ld
    checking if the linker (/usr/i586-suse-linux/bin/ld) is GNU ld... yes
    checking for /usr/i586-suse-linux/bin/ld option to reload object files... -r
    checking for BSD-compatible nm... /usr/bin/nm -B
    checking for a sed that does not truncate output... /usr/bin/sed
    checking how to recognise dependent libraries... pass_all
    checking command to parse /usr/bin/nm -B output... ok
    checking how to run the C preprocessor... gcc -E
    checking for egrep... grep -E
    checking for ANSI C header files... yes
    checking for sys/types.h... yes
    checking for sys/stat.h... yes
    checking for stdlib.h... yes
    checking for string.h... yes
    checking for memory.h... yes
    checking for strings.h... yes
    checking for inttypes.h... yes
    checking for stdint.h... yes
    checking for unistd.h... yes
    checking dlfcn.h usability... yes
    checking dlfcn.h presence... yes
    checking for dlfcn.h... yes
    checking for ranlib... ranlib
    checking for strip... strip
    checking for objdir... .libs
    checking for gcc option to produce PIC... -fPIC
    checking if gcc PIC flag -fPIC works... yes
    checking if gcc static flag -static works... yes
    checking if gcc supports -c -o file.o... yes
    checking if gcc supports -c -o file.lo... yes
    checking if gcc supports -fno-rtti -fno-exceptions... yes
    checking whether the linker (/usr/i586-suse-linux/bin/ld) supports shared libraries... yes
    checking how to hardcode library paths into programs... immediate
    checking whether stripping libraries is possible... yes
    checking dynamic linker characteristics... GNU/Linux ld.so
    checking if libtool supports shared libraries... yes
    checking whether to build shared libraries... yes
    checking whether to build static libraries... no
    checking whether -lc should be explicitly linked in... no
    creating libtool
    checking pthread.h usability... yes
    checking pthread.h presence... yes
    checking for pthread.h... yes
    checking for glib-config... no
    checking for GLIB - version >= 1.2.2... no
    *** The glib-config script installed by GLIB could not be found
    *** If GLIB was installed in PREFIX, make sure PREFIX/bin is in
    *** your path, or set the GLIB_CONFIG environment variable to the
    *** full path to glib-config.
    configure: error: *** GLIB >= 1.2.2 not installed - please install first ***

    Elikkä GLIB kait siitä sitten puuttuu? Mutta kun Yastilla katselee - niin näyttäisi ainakin siltä - että kyllä sinne joku GLIB on asennettu. Apu olisi tarpeen.

    Ja sitten vielä toinen asia perään. Miten Linuxissa vaihdetaan pikakuvakkeiden ulkoasua? Siis jos haluan esimerkiksi työpöydälle vetämäni Thunderbirdin Shell-scriptin kuvakkeen näyttämään järkevältä, niin kuinka saan valittua siihen eri kuvakkeen - vai saanko mitenkään? Tiedän - olen ulkonäköfriikki, mutta en voi sille mitään :)
     
  2. Erkkimon

    Erkkimon Active member

    Joined:
    Jan 26, 2005
    Messages:
    1,164
    Likes Received:
    0
    Trophy Points:
    66
    Okei. Oikee asenne. :)

    Lue nuo kaikki ku oot saanu käännöstyös valmiiks. Tossa on perustietoutta tiiviinä pakettina: http://www.raja-antura.org/modules.php?op=modload&name=News&file=index&catid=&topic=5 ja edistyneempää tietoutta Vinkkianturassa.

    Ohjeet kääntämiseen täällä: http://www.raja-antura.org/modules....ile=article&sid=4&mode=thread&order=0&thold=0

    Tarvit todennäkösesti paketin GLIB-dev. YaSTin versio GLIBistä voi myös olla liian vanha.

    YaST löytää noita kehityskirjastoja liian huonosti, mut yleensä siks sorsista kääntäminen onki pottumaista. Eli saat taistella dependanssien kanssa sen pari päivää. Sitte sua alkaa kyrsimää, kun sitä dependanssia ei löydy mistään, ja sie käännät dependanssia sorsista ja sekin vaatii dependanssia, jota ei löydy mistään ja se pitää kääntää sorsista. Mut täältä löytyy aika hyvin noita dependansseja .rpm -paketteina: http://www.raja-antura.org/modules....ile=article&sid=4&mode=thread&order=0&thold=0

    No mie en KDE:sta tiedä oikeen mitään, mutta kun alottelin Linukkaa käyttämää, käytin SuSEa ja KDE:ta (nykyään Ubuntu + Fluxbox) ja tein niin, että klikkasin oikeella hiirenkorvalla työpöytää -> luo uusi -> tiedosto -> linkki sijaintiin (url) ja laitoin ohjelman binin sijainnin sinne. Luultavasti /usr/bin/thunderbird. Eli noi saatto olla väärin, mut jotku noita vastaavat pitäis löytyy. Ja siis tota sijaintiin linkkaavaa kuvaketta voi muokata miten tahtoo. Siks käytin sitä, mut en tiiä, kuin oikeeoppinen toi tapa on, mut toimi ainaki. :p
     
  3. lauritx

    lauritx Regular member

    Joined:
    Mar 4, 2004
    Messages:
    488
    Likes Received:
    0
    Trophy Points:
    26
    Vähemmän kuluu hermoja kun vaan asentelee susen omia paketteja ja ne pikakuvakkeetkin menee oikeisiin paikkoihin. Jonkun pienen ohjelman kääntämine voi vaatia kymmeniä muita paketteja.
     
  4. oml

    oml Guest

    susen kanssa kyllä kannattaa ehdottomasti käyttää sen omia paketteja tuo .gz on slackwaren juttuja jotka oon todennu ajoittain aika vittupäiksi. Ei sillä etteikö ne toimisi vaan sillä että niitä ei osaa käyttää.
     
  5. lunix

    lunix Regular member

    Joined:
    Jun 30, 2004
    Messages:
    773
    Likes Received:
    0
    Trophy Points:
    26
    excalib:
    Tuo kääntämisen opettelu on ihan hyödyllistä, ei siinä mitää pahaa ole. Mutta käytät KDE:tä eikö, joten kannattaa valita varmaan jokin pieni KDE ohjelma jolla kokeilet kääntämistä.

    Erkkimon:
    Et vain osaa ;-)
    YaSTissa voit asentaa helposti kaikki devel paketit

    YaST -> Sotware > Install and Remove Software
    Extras -> Install All Matching -devel Packages

    Joo, ja kun aikansa on sotkenut järjestelmää niin sitten sitä ei pelasta enää mikään ;-).
    Siinä vaiheessa on turha kysyä enää apuja muilta käyttäjiltä, kun kukaan ei tiedä mitä olet järjestelmässä rikkonut asentamalla jonkun kirjaston uusiksi vain asentaaksesi jonkun paketin joka olisi ollut valmiina asennusmedialla.
     
  6. lauritx

    lauritx Regular member

    Joined:
    Mar 4, 2004
    Messages:
    488
    Likes Received:
    0
    Trophy Points:
    26
    Suseen voi kääntää src rpm paketeista itse. Eli komento: rpmbuild --rebuild >paketti<rpm ja järjestelmä kertoo mitkä muut paketit sinne pitää asentaa. Ehkä noi kaikki devel paketit kannattaa asentaa ensin jos haluaa itse sorsista käännellä.
     
  7. Kullerwo

    Kullerwo Regular member

    Joined:
    Apr 15, 2005
    Messages:
    128
    Likes Received:
    0
    Trophy Points:
    26
    KDE:ssä klikkaat oikealla hiirennapilla kuvakeen päältä, valitset ominaisuudet/properties ja klikkaat sitten kuvakkeen kohdalta. Pakettihallintaa käyttämällä saa ne kuvakkeetkin yleensä valmiina.
     

Share This Page