PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : PHP lässt sich nicht kompilieren



Cerox
13.04.06, 16:27
Hallo zusammen,

ich habe gerade einen SuSe 10 Rechner neu aufgesetzt und nun MySQL 5.0.20 und Apache 2.2.0 am laufen.

Beim Kompilieren von PHP kommt nun folgender Fehler, bei dem ich nicht mehr weiter weiß:


checking for mSQL support... no
checking for MSSQL support via FreeTDS... no
checking for MySQL support... yes
checking for specified location of the MySQL UNIX socket... no
checking for MySQL UNIX socket location... no
checking for mysql_close in -lmysqlclient... no
checking for mysql_error in -lmysqlclient... no
configure: error: mysql configure failed. Please check config.log for more information.

Die MySQL Datenbank läuft; ich kann mich auch als root an der Datenbank anmelden.

Das configure-Script habe ich folgendermaßen aufgerufen:


./configure --with-apxs2=/www/apache/bin/apxs --with-mysql=/www/mysql --with-config-file-path=/www/apache/conf

Der Pfad zum MySQL Verzeichnis stimmt - letztes Mal habe ich es genauso gemacht und es hatte so funktioniert.

Kann mir bitte jemand helfen?

drcux
13.04.06, 17:13
"Please check config.log for more information"

Fly
13.04.06, 17:14
Nicht an google gedacht? Google spuckt da viel aus und da wird sicher eine Lösung (http://www.google.at/search?hl=de&q=configure%3A+error%3A+mysql+configure+failed.&btnG=Google-Suche&meta=) dabei sein!

Cerox
13.04.06, 17:24
Gegoogelt habe ich schon, nur finde ich bei dem Thema nicht so schnell eine Lösung - bei den letzten drei Errors ging das schon.

In die config.log habe ich auch längst geguckt aber das ist irgendwie spanisch für mich - hier mal nen Auszug:



/www/mysql/lib/libmysqlclient.a(crypto_wrapper.o): In function `TaoCrypt::RSA_PrivateKey::~RSA_PrivateKey(void)':
crypto_wrapper.cpp:(.gnu.linkonce.t._._Q28TaoCrypt 14RSA_PrivateKey+0x123): undefined reference to `__builtin_delete'
/www/mysql/lib/libmysqlclient.a(log.o): In function `yaSSL::Log::~Log(void)':
log.cpp:(.text+0x20): undefined reference to `__builtin_delete'
/www/mysql/lib/libmysqlclient.a(libtaocrypt_la-algebra.o):(.gnu.linkonce.d.__vt_Q28TaoCrypt23Abst ractEuclideanDomain+0xc): und
efined reference to `__pure_virtual'
/www/mysql/lib/libmysqlclient.a(libtaocrypt_la-algebra.o):(.gnu.linkonce.d.__vt_Q28TaoCrypt23Abst ractEuclideanDomain+0x10): un
defined reference to `__pure_virtual'
/www/mysql/lib/libmysqlclient.a(libtaocrypt_la-algebra.o):(.gnu.linkonce.d.__vt_Q28TaoCrypt23Abst ractEuclideanDomain+0x14): un
defined reference to `__pure_virtual'
/www/mysql/lib/libmysqlclient.a(libtaocrypt_la-algebra.o):(.gnu.linkonce.d.__vt_Q28TaoCrypt23Abst ractEuclideanDomain+0x18): un
defined reference to `__pure_virtual'
/www/mysql/lib/libmysqlclient.a(libtaocrypt_la-algebra.o):(.gnu.linkonce.d.__vt_Q28TaoCrypt23Abst ractEuclideanDomain+0x3c): un
defined reference to `__pure_virtual'
/www/mysql/lib/libmysqlclient.a(libtaocrypt_la-algebra.o):(.gnu.linkonce.d.__vt_Q28TaoCrypt23Abst ractEuclideanDomain+0x40): mo
re undefined references to `__pure_virtual' follow
/www/mysql/lib/libmysqlclient.a(libtaocrypt_la-file.o): In function `TaoCrypt::FileSource::~FileSource(void)':
file.cpp:(.text+0x64): undefined reference to `__builtin_delete'
/www/mysql/lib/libmysqlclient.a(libtaocrypt_la-file.o): In function `TaoCrypt::FileSink::~FileSink(void)':
file.cpp:(.text+0x200): undefined reference to `__builtin_delete'
collect2: ld returned 1 exit status
configure: failed program was:
#line 59430 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
/* We use char because int might match the return type of a gcc2
builtin and then its argument prototype would still apply. */
char mysql_error();

int main() {
mysql_error()
; return 0; }

Jigsore
13.04.06, 18:22
MySQL Develpakete vergessen?

Cerox
13.04.06, 19:01
Hm, ne das habe ich jetzt nicht gemacht - letztes mal auch nicht, aber da muss es dann wohl schon richtig drauf gewesen sein.

Ich habe jetzt mal per "apt-get install mysql-devel" das ganze installiert aber es geht immer noch nicht. Ich schätze mal das gibt Probleme wenn ich das eine per apt installiere und das andere selbst kompiliere; aber letztes mal hab ich ja auch nur den MySQL server genommen.

Mal ne andere Frage: Was ist der Unterschied zwischen dieser Standard Version (die hab ich bisher immer genommen) und der Max. Version? Ist das andere bei der Max. bereits bei?

Jigsore
13.04.06, 19:33
--with-mysql=/www/mysql

:D

Cerox
13.04.06, 20:38
Ich habe jetzt mal vom der mysql-Homepage diverse Libraries runtergeladen und installiert.

Um Konflikte zu vermeiden, habe ich dass Paket, welches ich mit apt installiert habe wieder runterschmissen und vorher auch mal mit rpm -qa | grep mysql geschaut; dort war einmal mysql-shared 4.x - da ich ja MySQL 5 haben will, hab ich das mal deinstalliert.

Nun habe ich folgendes installiert (Ausgabe von rpm -qa | grep MySQL):

MySQL-devel-standard-5.0.20-0.rhel3
MySQL-client-standard-5.0.20-0.rhel3
MySQL-shared-standard-5.0.20-0.rhel3

Müsste doch eigentlich richtig sein mit Version 5.0.20 wie auch der Server.... Was fehlt mir noch - es kommt immer noch die selbe Fehlermeldung beim configure?


--with-mysql=/www/mysql

Dort habe ich mein MySQL-Server Verzeichnis angegeben - ist das falsch? Letztes mal hat es auch so funktioniert... Und ich hatte dann auch PHP Scripte laufen, die die Datenbank benutzt haben, d.h. der Zugriff funktionierte definitiv.

Jigsore
13.04.06, 21:20
Lass es entweder weg, oder such z.b. nach der mysql.h und gebe das Oberverzeichnis an wenn es immer noch nicht funktioniert, dann verschwindet auch der Fehler.

Cerox
13.04.06, 22:16
Ich habe es jetzt weggelassen und konnte dadurch php kompilieren.

Resultat: Ich kann überhaupt keine mySQL-Befehl ausführen, wie z.B.mysql_connect, dann kommt, error in line xy etc.

Jigsore
13.04.06, 22:27
Mein Fehler. Ich meinte das *=/pfad* weglassen, dann sucht ./configure in den Standardverzeichnissen. Sollte der Fehler dann immer noch auftauchen, suche nach der mysql.h (z.B. gefunden in /opt/mysql/include/mysql, dann ..=/opt/mysql beim configure)

Cerox
13.04.06, 23:14
Danke für alles - es hat so funktioniert.