[Debian] FireFox vindt pad naar shared library niet

Pagina: 1
Acties:

  • YellowOnline
  • Registratie: Januari 2005
  • Laatst online: 25-01 20:45

YellowOnline

BEATI PAVPERES SPIRITV

Topicstarter
Ik post nu vanuit Windows dus ik kan niet quoten, maar het is een simpel probleem. Omdat Iceweasel issues heeft (oa. heavy on resources by multiple tabs, UserAgent,...) zou ik FireFox willen gebruiken. De tar.gz heb ik geünpacked naar /usr/bin/firefox, ik doe ./firefox en... "error while loading shared libraries: xxxxxxxxxxxxx: cannot open shared object file: No such file or directory" (sorry, ik ben de exacte naam vergeten).

Nu, als ik apt-file search naar die library is ze wel degelijk aanwezig én in de juiste versie. Wat googlen levert een handvol mensen op met exact hetzelfde probleem, maar in hun geval is het steeds ofwel de library die ontbreekt ofwel de versie die niet klopt. Bij mij is dat niet het geval. Ik kan enkel bedenken dat firefox het pad niet vindt naar de shared library, maar hoe maak ik hem dat wijs?

Edit: Ik ken het Iceweasel/Firefox verhaal, en daar is een hele boel discussie over, maar dat is sowieso irrelevant. Ik wil gewoon FF installeren en dat lukt niet door het ontbreken dus van een shared lib hoewel die er écht wel is. Zodra ik in Lenny ben laat ik wel weten welke precies.

[ Voor 14% gewijzigd door YellowOnline op 01-06-2009 12:17 ]


  • Newjersey
  • Registratie: November 2000
  • Laatst online: 27-01 22:50
Het is belangrijk om te weten welke library je niet hebt. doe is een ldd ./firefox. DAn zie je welke so je mist, vervolgens even googlen en je kan hem installeren :)

Verwijderd

Je weet dat iceweasel qua code hetzelfde is als firefox. Alleen de logo's en naam zijn gewijzigd (omdat die niet vrij zijn). Dus als je met iceweasel issues hebt dan zul je die ook tegen komen in firefox (vanuitgaande dat je dezelfde versie gebruikt).

Verder is het inderdaad belangrijk dat we de naam van de libary hebben.

  • YellowOnline
  • Registratie: Januari 2005
  • Laatst online: 25-01 20:45

YellowOnline

BEATI PAVPERES SPIRITV

Topicstarter
Sorry, heb het druk gehad. Het volgende illustreert vast beter het probleem:

code:
1
2
3
4
5
6
7
8
9
10
yellow@YellowLinux:/usr/bin/firefox$ ./firefox
./firefox-bin: error while loading shared libraries: libgtk-x11-2.0.so.0: cannot open shared object file: No such file or directory

yellow@YellowLinux:/usr/bin/firefox$ apt-file search libgtk-x11-2.0.so.0
ia32-libs-gtk: /emul/ia32-linux/usr/lib/libgtk-x11-2.0.so.0
ia32-libs-gtk: /emul/ia32-linux/usr/lib/libgtk-x11-2.0.so.0.1200.11
libgtk2.0-0: /usr/lib/libgtk-x11-2.0.so.0
libgtk2.0-0: /usr/lib/libgtk-x11-2.0.so.0.1200.12
libgtk2.0-0-dbg: /usr/lib/debug/usr/lib/libgtk-x11-2.0.so.0.1200.12
yellow@YellowLinux:/usr/bin/firefox$


Ik heb dus wat van "hey, de library is er! Waarom vind je ze niet?"

  • Nick_S
  • Registratie: Juni 2003
  • Laatst online: 26-01 12:11

Nick_S

++?????++ Out of Cheese Error

Newjersey schreef op maandag 01 juni 2009 @ 10:53:
Het is belangrijk om te weten welke library je niet hebt. doe is een ldd ./firefox. DAn zie je welke so je mist, vervolgens even googlen en je kan hem installeren :)
Probeer die ldd eens uit te voeren, dan weten we waar die naar zoekt.

'Nae King! Nae quin! Nae Laird! Nae master! We willna' be fooled agin!'


  • YellowOnline
  • Registratie: Januari 2005
  • Laatst online: 25-01 20:45

YellowOnline

BEATI PAVPERES SPIRITV

Topicstarter
Ik had niet door dat ldd een command was :X (wie vindt dat ik teveel formatting gebruik in mijn posts weet nu waarom :p).

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
yellow@YellowLinux:/usr/bin/firefox$ ldd ./firefox-bin 
    linux-gate.so.1 =>  (0xf7f2f000)
    libpthread.so.0 => /lib32/libpthread.so.0 (0xf7f0a000)
    libjemalloc.so => not found
    libxul.so => not found
    libmozjs.so => not found
    libxpcom.so => not found
    libplds4.so => not found
    libplc4.so => not found
    libnspr4.so => not found
    libdl.so.2 => /lib32/libdl.so.2 (0xf7f05000)
    libgtk-x11-2.0.so.0 => not found
    libatk-1.0.so.0 => not found
    libgdk-x11-2.0.so.0 => not found
    libgdk_pixbuf-2.0.so.0 => not found
    libpangocairo-1.0.so.0 => not found
    libpango-1.0.so.0 => not found
    libcairo.so.2 => not found
    libgmodule-2.0.so.0 => not found
    libgobject-2.0.so.0 => not found
    libglib-2.0.so.0 => not found
    libX11.so.6 => not found
    libm.so.6 => /lib32/libm.so.6 (0xf7ede000)
    libstdc++.so.6 => not found
    libgcc_s.so.1 => not found
    libc.so.6 => /lib32/libc.so.6 (0xf7d8c000)
    /lib/ld-linux.so.2 (0xf7f30000)


Als ik een steekproefje doe op die libraries ziet het er naar uit dat alles wel bestaat onder /usr/lib/%, behalve die linux-gate.so.1. Dat schijnt wel normaal te zijn op x64 systemen volgens dit artikel (inclusief assembly, voor de liefhebbers).

Dus de vraag blijft: hoe maak ik FF wijs waar de libraries staan? Ik heb al overwogen om ze te kopiëren naar de directory van de binary, maar dat lijkt me - als het al werkt - geen nette oplossing.

  • riddles
  • Registratie: April 2000
  • Laatst online: 26-05-2025
Je hebt de 32-bits Firefox geinstalleerd op je 64-bits systeem (zie de paar 32-bits libraries die door ldd wel gevonden worden onder /lib32). Ofwel je moet van alle libraries de compatible 32-bits versies erbij installeren, ofwel je moet de 64-bits versie van Firefox downloaden en installeren.

  • YellowOnline
  • Registratie: Januari 2005
  • Laatst online: 25-01 20:45

YellowOnline

BEATI PAVPERES SPIRITV

Topicstarter
riddles schreef op dinsdag 02 juni 2009 @ 20:46:
Je hebt de 32-bits Firefox geinstalleerd op je 64-bits systeem (zie de paar 32-bits libraries die door ldd wel gevonden worden onder /lib32). Ofwel je moet van alle libraries de compatible 32-bits versies erbij installeren, ofwel je moet de 64-bits versie van Firefox downloaden en installeren.
Goed gezien van je :o FF is 32-bit omdat er - behalve onofficiële builds - geen 64-bit versie is. Ik was totaal vergeten dat dat natuurlijk gevolgen heeft voor de dependencies. De foutmeldingen waren niet echt behulpzaam om me in de juiste richting te leiden. Ik vermoed dat er niets op tegen is als ik gewoon de ontbrekende libraries (in 32-bit) gewoon onder /lib32 gooi? Of heeft dat effect op de systeemperformance? Hoe dan ook, bedankt voor je scherpzinnige opmerking.
Pagina: 1