Kirjoittaja Aihe: Ohjelmanasennus ei löydä tarvittavia tiedostoja  (Luettu 1739 kertaa)

tmeriluo

  • Käyttäjä
  • Viestejä: 6
    • Profiili
     -Olen jonkin aikaa käyttänyt Ubuntu 6.10 edgyä, mutta minulla itselläni ei ole nettiyhteyttä. Ongelmani on siinä, etten ole onnistunut asentamaan siihen yhtäkään ohjelmaa (!). Käsittääkseni ilman nettiyhteyttä tämän pitäisi onnistua joko toiminnolla "dpkg -i", tai noudattamalla ohjelmapaketin mukana tulleita asennusohjeita (yleensä "./configure, make, make install") sen jälkeen, kun paketti on purettu. Olen tällä tavoin yrittänyt asentaa mm. ohjelmia "mondo rescue" (mondo-2.2.4), "inkscape" (inkscape-0.45), ja "graveman" (graveman-0.3.12-5).

-Seuraavassa yhteenveto siitä, missä asennus kussakin tapauksessa "jumittuu":

1: "Mondo rescueta" asennettaessa "./configure" -toiminto vaikuttaa menevän normaalisti läpi, mutta "make" -toiminto ilmoittaa seuraavaa:

"in file included from libmondo-archive.c:175:
my-stuff.h:199:18: error: newt.h: No such file or directory"

-Nimeltään lähin järjestelmästä löytyvä, "Synaptic package managerin" asennetuksi ilmoittava ohjelmapaketti on "libnewt0.52"

2: "inkscapea" sennettaessa  "./configue" ilmoittaa:

"checking for png_read_info in -lpng... no
configure: error: libpng >= 1.2 is needed to compile inkscape"

-Järjestelmästä kuitenkin nimenomaisesti löytyy asennettuna paketti "libpng12-0" (!)

3: "gravemania" asennettaessa "./configure" ilmoittaa:

"no package 'gtk+-2.0' found
 no package 'glib-2.0' found
 no package 'atk' found
 no package 'pango' found
 no package 'libglade-2.0' found

Consider adjusting the PKG_CONFIG_PATH environment variable if you installed software in a non-standard prefix"

-järjestelmästä löytyvät asennettuina ainakin seuraavat paketit:

"libgtk2.0-0"
"libglib2.0-0"
"libatk1.0-0"
"libpango1.0-0"
"libglage2-0"


     -Tämä on ensimmäinen kerta kun jätän itse viestiä tähän foorumiin, koska en ole kyennyt löytämään ratkaisua muualta. Ne tuntemani henkilöt, jotka käyttävät Ubuntua, asentavat ohjelmat, ja niiden tarvitsemat päivitykset suoraan netistä, mutta minulle se ei ilman nettiyhteyttä onnistu. Itse en ole erityisesti ATK-asiantuntija, joten en osaa sen kummemmin tulkita näitä asennustoimintojen antamia viestejä. Koska tietokoneeni on lisäksi pöytäkone, sen siirtäminen toimivan nettiyhteyden ääreen ei sekään ole aivan yksinkertaista.

   -Jos jollakulla on ehdotuksia esittämäni ongelman ratkaisemiseksi, olisin siitä kovin kiitollinen.

janne

  • Käyttäjä
  • Viestejä: 5150
    • Profiili
Vs: Ohjelmanasennus ei löydä tarvittavia tiedostoja
« Vastaus #1 : 05.10.07 - klo:00.31 »
Olen jonkin aikaa käyttänyt Ubuntu 6.10 edgyä, mutta minulla itselläni ei ole nettiyhteyttä.

alkaa hiljalleen olemaan aika päivittää ;)

Ongelmani on siinä, etten ole onnistunut asentamaan siihen yhtäkään ohjelmaa (!).

check.

Käsittääkseni ilman nettiyhteyttä tämän pitäisi onnistua joko toiminnolla "dpkg -i",

periaatteessa juu, jos paketit ovat .deb -paketteja. dpkg ei kuitenkaan osaa ratkoa riippuvuuksia, joten kaikki riippuvuudet täyttävät paketit pitää joko a) asentaa oikeassa järjestyksessä tai b) antaa kaikki kerralla dpkg:n parametreiksi.

toki asennus onnistuu myös apt-getilla jos asennuslähteiksi on lisätty esim. sopivia cd/dvd-levyjä.

tai noudattamalla ohjelmapaketin mukana tulleita asennusohjeita (yleensä "./configure, make, make install") sen jälkeen, kun paketti on purettu.

ja tuo taas ei ole varsinaisesti asentamista. tai siis onhan se, mutta se on myös kääntämistä ja paketinhallinnan ohittamista. kääntämistä en suosittelisi aloittelijoille (tai oikeastaan kenellekään jos vastaava deb-paketti on saatavilla) ja paketinhallinnan ohittamista en kenellekään.

sitä paitsi netittömälle koneelle on aika paljon helpompi hakea deb-paketit ja sen riippuvuudet kuin, lähdekoodipaketit, sen käännösaikaiset riippuvuudet, ajonaikaiset riippuvuudet ja niiden vastaavat riippuvuudet ja kääntää ja asennella ne käsin oikeassa järjestyksessä.

1: "Mondo rescueta" asennettaessa "./configure" -toiminto vaikuttaa menevän normaalisti läpi, mutta "make" -toiminto ilmoittaa seuraavaa:

hae deb-paketti ja asenna se.

2: "inkscapea" sennettaessa  "./configue" ilmoittaa:

hae deb-paketti ja asenna se.

3: "gravemania" asennettaessa "./configure" ilmoittaa:

hae deb-paketti ja asenna se.

"no package 'gtk+-2.0' found
 no package 'glib-2.0' found
 no package 'atk' found
 no package 'pango' found
 no package 'libglade-2.0' found

tässä kuten aiemmissa tapauksissakin, kaivataan ko. kirjastojen kehityspaketteja jotka ovat välttämättömiä ohjelmien kääntämiseksi (mutta eivät ajamiseksi).

-Jos jollakulla on ehdotuksia esittämäni ongelman ratkaisemiseksi, olisin siitä kovin kiitollinen.

hae paketinhallinnan hanskattavaksi tarkoitettuja binäärimuotoisia deb-paketteja ja asenna niitä paketinhallintatyökaluilla. ihan tosi.
Janne

anttimr

  • Käyttäjä
  • Viestejä: 1625
    • Profiili
Vs: Ohjelmanasennus ei löydä tarvittavia tiedostoja
« Vastaus #2 : 05.10.07 - klo:01.26 »
Aluksi termien selvennystä. Ubuntun yhteydessä ohjelmapaketeiksi kutsutaan vain .deb päätteisiä tiedostoja. Ne asennetaan paketinhallintaohjelmalla, joita on erilaisia - mainitusta simppelistä dpkg:sta monipuoliseen Synapticiin (Löytyy valikosta järjestelmä > ylläpito > synaptic-pakettienhallinta).
Se mitä sinä yrität tehdä, on ohjelman kääntämistä ja asentamista suoraan lähdekoodista (levitetään yleensä tar.gz päätteisenä tiedostona). Kääntäminen on kenties yksinkertaisista ohjeista huolimatta paljon ohjelmapaketin asentamista monimutkaisempi prosessi - yksi paketoinnin suurista eduista on se, että käyttäjän ei tarvitse itse alkaa kääntelemään softia!

Saamasi herjat johtunevat siitä, että sinulla ei ole asennettuna noista kirjastoista kehitysversioita. Lisäksi tarvisit paketissa build-essential olevat kääntötyökalut, joita niitäkään ei asennus cd taida sisältää.

Koodia: [Valitse]
antti@antti-desktop:~$ apt-cache search libpng12
libpng12-0 - PNG library - runtime
libpng12-dev - PNG library - development

Eli unohda tuo kääntäminen ainakin aluksi.

Toisekseen. Ilman nettiyhteyttä pakettien asennus on siinä mielessä haastavaa, että paketit tuppaavat riippumaan toisista paketeista, jotka taas riippuvat joistain muista paketeista. Siksi et voi vain ladata jollain toisella koneella inkscape-pakettia ja asentaa sitä (esim. dpkg:llä), koska se riippuu (Feistyssä) seuraavista paketeista:

Koodia: [Valitse]
   Depends: libatk1.0-0 (>= 1.13.1), libc6 (>= 2.5-0ubuntu1), libcairo2 (>= 1.4.2), libcairomm-1.0-1,
libfontconfig1 (>= 2.4.0), libfreetype6 (>= 2.2), libgc1c2, libgcc1 (>= 1:4.1.2), libgconf2-4 (>= 2.13.5),
libglib2.0-0 (>= 2.12.9), libglibmm-2.4-1c2a, libgnomevfs2-0 (>= 1:2.17.90), libgtk2.0-0 (>= 2.10.3),
libgtkmm-2.4-1c2a, liblcms1 (>= 1.08-1), liborbit2 (>= 1:2.14.1), libpango1.0-0 (>= 1.16.1), libpng12-0 (>=
1.2.13-4), libpopt0 (>= 1.10), libsigc++-2.0-0c2a (>= 2.0.2), libssl0.9.8 (>= 0.9.8c-1), libstdc++6 (>= 4.1.2),
libx11-6, libxcursor1 (>> 1.1.2), libxext6, libxfixes3 (>= 1:4.0.1), libxft2 (>> 2.1.1), libxi6, libxinerama1,
libxml2 (>= 2.6.27), libxrandr2 (>= 2:1.2.0), libxrender1, libxslt1.1 (>= 1.1.20), zlib1g (>= 1:1.2.1)

Sinun pitäisi ensin varmistua siitä, että kaikki nuo paketit ja niiden riippuvuudet on asennettu tai asennettavissa. Voit toki selvitellä riippuvuuksia käsin esim. apt-cache show komennolla, mutta se menee aika vaikeaksi. Nettiyhteyden omaavalla konella Synaptic (tai Apt) tekee juuri tuon puolestasi.

Kun ei ole kokemusta täysin netittömistä koneista, on paha sanoa, millä lailla sinun pitäisi edetä. Ehkä kannattaa tehdä oma pakettivarasto cd:lle tämän ketjun mukaan. http://forum.ubuntu-fi.org/index.php?topic=12572.msg94055#msg94055 

Kokeilepa kuitenki ensin vaikka tällaista:
Koodia: [Valitse]
apt-get -qq --print-uris install graveman | cut -d\' -f2 > graveman_paketit.txt
less graveman_paketit.txt

Siinä pitäisi olla url-osoitteet .deb paketteihin, jotka tarvitset gravemanin asennukseen. Nehän voi sitten nettikoneella ladata wgetillä tai vaikka firefoxilla yksitellen... jos pääset näin pitkälle katsotaan sitten vielä lisäohjeita asennukseen.

Olisi hyvä, jos saisit koneen edes hetkeksi nettiin, niin voisit päivittää apt:in tietokannan. Ilman sitä apt ehdottelee vanhentuneitakin paketteja, joissa saattaa olla bugeja , tietoturva-aukkoja tms.

Toivottavasti selvensi tilannetta :)

Edit. Janne ehti ensin ja nasevaan tyyliin kuten aina.
« Viimeksi muokattu: 05.10.07 - klo:10.19 kirjoittanut anttimr »
Ubuntu 12.10 Quantal Quetzal