compilen PHP, fout door -lX11 of -lt1

Pagina: 1
Acties:

  • Bart B
  • Registratie: Juli 2000
  • Laatst online: 06-04 17:55
Hallo allemaal,

In mijn vorige topic dat staat op --> compilen PHP door "ld" niet mogelijk <-- Had ik een probleem met het compilen van PHP4.0.5. in combinatie met de GD libary. Het probleem komt op het volgende neer:

Ik gebruik de volgende regel voor configureren: ./configure --with-roxen=/usr/local/roxen/server --with-mysql --enable-calendar --with-tiff --with-jpeg-dir --with-gd --with-ttf --with-png
hier komen geen fouten uit, als ik daarna make intik gaat alles goed tot het laatste moment, en dan geeft hij aan dat hij aan dat:
PHP4.0.5 " ld niet kan vinden -lX11 "
PHP4.0.4pl1 " ld niet kan vinden -lt1"

Ik weet onder de hand dat ld een linker is de alle libary's linked bij het compilen. Mijn vraag:

- Welke RPM of *.tar.gz moet ik installeren om aan de depencies te voldoen? Ik heb al wat development spullen geinstalleerd van X11 in de hoop dat dat het ei van columbus zou zijn.

- Welke config files zijn er voor -lX11

- Waar staat dat -lX11 of -lt1 voor

- Help me a.u.b. :'( ik wil zo graag plaatjes maken

Bij mijn weten is GD goed geinstalleerd (deze gaf helemaal geen problemen met installeren). Ik heb alle paketten die in als opties vermeld staan ook geinstalleerd.

Kan het zijn dat GD naar -lX11 linked? zo ja hoe kan ik dit dan checken en verhelpen

SuSE7.0
P-100Mhz 40MB-Ram 46GB HD geen X11 actief in gebruik en ook meeste niet geinstalleerd

  • Bart B
  • Registratie: Juli 2000
  • Laatst online: 06-04 17:55
KICK ^^^^^^^^^^^^^^^^^^^^^^^^^^

  • Sjonny
  • Registratie: Maart 2001
  • Laatst online: 15:05

Sjonny

Fratser

Je moet letten op welke directories aan de laatste gcc command worden meegegeven in de -L opties. Kijk ook in de /etc/ld.so.conf. Voeg hier de directories to waar libt1.so en libX11.so instaan. Als je deze file veranderd moet je ldconfig runnen.

The problem is in the part of your brain that handles intelligence.


  • Bart B
  • Registratie: Juli 2000
  • Laatst online: 06-04 17:55
achter de optie -L staat alleen /usr/local/lib
in de file /etc/ld.so.conf staat het pad naar libX11.so
ldconfig is uitgevoerd
hij geeft nog steeds het zelfde probleem

  • Bart B
  • Registratie: Juli 2000
  • Laatst online: 06-04 17:55
^^^^^^^^^

Verwijderd

Tja het klinkt toch echt alsof hij de benodigde X11-libs niet kan vinden, maar daar was je gok ik zelf al wel op gekomen.

-lX11 staat gewoon voor de X11-libs bij mijn weten.

Zeker weten dat het goede path in /etc/ld.so.conf staat? (niet vergeten ldconfig te draaien).

Die -lt1 komt gok ik zo van je Truetype fonts. Toevallig wel Freetype1 geinstalleerd staan (en zo ja, ook de includes toegankelijk voor ld).

Overigens is het ook heel vaak zo, dat je bij de --with-statements gewoon een "="-teken erachter kan plakken met het path waar configure de benodigde includes kan vinden.

Tja een oplossing heb ik zo niet 1,2,3 voor je helaas :'(

  • Bart B
  • Registratie: Juli 2000
  • Laatst online: 06-04 17:55
Even om aan te geven dat volgens mij de libaries gewoon aanwezig zijn:

beumer:/usr/X11R6/lib # dir (ik krijg hele list, alleen benodigd eruit)
------------------SNIP------------------------
-rw-r--r-- 1 root root 1378374 Mar 12 18:19 libX11.a
lrwxrwxrwx 1 root root 13 Jun 18 23:00 libX11.so -> libX11.so.6.2
lrwxrwxrwx 1 root root 13 Jun 18 23:00 libX11.so.6 -> libX11.so.6.2
-rwxr-xr-x 1 root root 1055882 Mar 12 18:19 libX11.so.6.2
------------------SNAP------------------------
heb ik hier niet de goede premissies :? standaard SuSE7 stuff.

verder dan maar even de beruchte file met inhoud

File: ld.so.conf
/lib-aout
/usr/X11R6/lib/Xaw95
/usr/X11R6/lib/Xaw3d
/usr/X11R6/lib/
/usr/X11R6/lib/X11
/usr/i486-linux/lib
/usr/i486-linux-libc5/lib=libc5
/usr/i486-linux-libc6/lib=libc6
/usr/i486-linuxaout/lib
/usr/i386-suse-linux/lib
/usr/local/lib
/usr/openwin/lib
/opt/kde/lib
/opt/gnome/lib

hier ook nog wat gevonden, maar kan er niet heel veel mee lijkt het.
http://www.linuxfocus.org/English/November1997/article6.html#linkado

kan iemand me helpen :?

Verwijderd

Op zaterdag 23 juni 2001 16:45 schreef Bart B het volgende:

dan geeft hij aan dat hij aan dat:

PHP4.0.5 " ld niet kan vinden -lX11 "

PHP4.0.4pl1 " ld niet kan vinden -lt1"



Ik weet onder de hand dat ld een linker is de alle libary's linked bij het compilen. Mijn vraag:



- Waar staat dat -lX11 of -lt1 voor
In de code worden functies aangeroepen die in libx11.so zitten, omdat te laten werken moet hij dus gelinkt worden aan libx11.so, en dat is precies wat ld zou moeten doen met -lx11.

Probeer anders eens 'ldconfig -v | grep libX11.so' om te controleren of ld echt weet waar die lib te vinden is en hetzelfde voor -lt1.
Het lijkt mij overigens als ik naar je laatste reply kijk dat het wel klopt, erg vreemd dit.

P.S. doe niet alles als root, en realman gebruiker `ls` ipv. `dir` :7

  • Bart B
  • Registratie: Juli 2000
  • Laatst online: 06-04 17:55
Probeer anders eens 'ldconfig -v | grep libX11.so' om te controleren of ld echt weet waar die lib te vinden is en hetzelfde voor -lt1.
hier gaat hij dan:
------------------------------------
beumer:/php-4.0.5 # ldconfig -v |grep libX11.so
libX11.so.6 -> libX11.so.6.2
------------------------------------
P.S. doe niet alles als root, en realman gebruiker `ls` ipv. `dir`
dat van dat realman begrijp ik niet, ik zit nu alleen als root op mijn bak om te compilen. Voor het gewone werk heb ik een appart useraccount
dir is een commando dat ik al kende en is er eigenlijk sindsdien niet uitgegaan

  • Bart B
  • Registratie: Juli 2000
  • Laatst online: 06-04 17:55
^^^^^^^

  • Bart B
  • Registratie: Juli 2000
  • Laatst online: 06-04 17:55
niemand :'( ^^^^^^^
weet iemand of misschien de rechten van de files niet goed zijn, waarom wil hij niet linken, volgens mij kan dit niet aan PHP liggen, alleen aan de liblinker. PLEASE!!

Verwijderd

Heb je PHP4.0.6, die inmiddles al een paar dagen uit is al eens geprobeerd?

  • Bart B
  • Registratie: Juli 2000
  • Laatst online: 06-04 17:55
Ik vrees dat PHP-4.0.6 gewoon het zelfde probleem geeft aangezien het aan de linker licht en niet aan de installatie van PHP. Misschien dat ik hem nog eens probeer, maar ik denk niet dat dat de oplossing van het probleem is.

Verwijderd

Ik houd het ff kort, want ik ben deze keymap nog niet echt gewend :)
Dat '/usr/i486-suse-linux/bin/ld: cannot find -lX11' baart me zorgen. Ik ken Suse niet, maar is dat niet iets ouds en probeert ie niet aan een .a te linken?
Wilde gok dit.

  • Bart B
  • Registratie: Juli 2000
  • Laatst online: 06-04 17:55
Ik heb even gekeken, maar die die is waarschijnlijk de dir waar ld vroeger heeft gestaan.

ld staat er, echter dit is een symlink naar ../../bin/ld

Verwijderd

Ik legde dit net ook al in een andere draad uit...

-lblabla is een linker naar een library (shared library, meestal). -l<bla> betekent dat ie lib<bla>.so zoekt, dut hij zoekt bij jou libX11.so, het standaard bestand dat elke computer met X moet hebben.

Dat hij die niet kan vinden terwijl die er wel is betekent dat ie niet in de goede directories kijkt. Staat er ERGENS in die compile-regel een -L/usr/X11R6/lib ?

-L/path/to/directory kijkt voor de libraries (-l<bla>) in de directory /path/to/directory. -I/path/to/dir zoekt naar header files (#include "bla.h") in de opgegeven directory.

Als de .so wel bestaat maar hij kan em vinden kan ik slechts bedenken dat /usr/X11R6/lib in je LD_LIBRARY_PATH mist en niet meegegeven wordt in het compile commando door middel van -L/usr/X11R6/lib...

Geef dus eens de output van: "echo $LD_LIBRARY_PATH"
En geef het commando dat wordt gebruikt tijdens het compilen als het fout gaat (dus de regel "gcc -D..... -L..... -l.....")

  • Bart B
  • Registratie: Juli 2000
  • Laatst online: 06-04 17:55
:):):) EINDELIJK IS HET GELUKT!!! :):):):)

Ik heb het op een beetje onconventionele manier opgelost. Aangezien de linker niet met -L /usr/X11/ ..... aangaf, heb ik voor een aantal dingen een symlink gemaakt naar de dir die hij wil wou includen. Door dit te doen kun hij wel de libaries vinden en wou hij wel compilen.

Bedankt Allemaal, het blijft een vaag probleem, maar ik hebhet nu wel kunnen omzeilen
Pagina: 1