PHP kompilieren

Apache, Lighttpd, nginx, Cherokee
Post Reply
p2p
Posts: 95
Joined: 2003-04-07 06:57
 

PHP kompilieren

Post by p2p »

Hallo
Beim Versuch, PHP zu kompilieren (make) kommt nach jeder Befehlszeile folgende Warnung:
cc1: warning: changing search order for system directory "/usr/local/include"
cc1: warning: as it has already been specified as a non-system directory
Was hat das zu bedeuten?

Dankeschön
captaincrunch
Userprojekt
Userprojekt
Posts: 7066
Joined: 2002-10-09 14:30
Location: Dorsten
Contact:
 

Re: PHP kompilieren

Post by captaincrunch »

Gegenfrage : mit welchen Optionen hast du kompiliert ?
DebianHowTo
echo "[q]sa[ln0=aln256%Pln256/snlbx]sb729901041524823122snlbxq"|dc
p2p
Posts: 95
Joined: 2003-04-07 06:57
 

Re: PHP kompilieren

Post by p2p »

Mit diesen hier:

Code: Select all

'./configure' '--prefix=/usr/share' '--datadir=/usr/share/php' '--bindir=/usr/bin' '--libdir=/usr/share' '--includedir=/usr/include' '--with-_lib=lib' '--with-config-file-path=/etc' '--with-exec-dir=/usr/lib/php/bin' '--disable-debug' '--enable-bcmath' '--enable-calendar' '--enable-ctype' '--enable-dbase' '--enable-discard-path' '--enable-exif' '--enable-filepro' '--enable-force-cgi-redirect' '--enable-ftp' '--enable-gd-imgstrttf' '--enable-gd-native-ttf' '--enable-inline-optimization' '--enable-magic-quotes' '--enable-mbstr-enc-trans' '--enable-mbstring' '--enable-memory-limit' '--enable-safe-mode' '--enable-shmop' '--enable-sigchild' '--enable-sysvsem' '--enable-sysvshm' '--enable-track-vars' '--enable-trans-sid' '--enable-versioning' '--enable-wddx' '--with-bz2' '--with-dom=/usr/include/libxml2' '--with-ftp' '--with-gdbm' '--with-gettext' '--with-gmp' '--with-iodbc' '--with-jpeg-dir=/usr' '--with-mcal=/usr' '--with-mcrypt' '--with-mysql=/usr' '--with-ndbm' '--with-png-dir=/usr' '--with-snmp' '--with-t1lib' '--with-tiff-dir=/usr' '--with-ttf' '--with-freetype-dir=yes' '--with-xml' '--with-xpm-dir=/usr/X11R6' '--with-zlib=yes' '--with-openssl' '--with-curl=/usr/bin/curl' '--with-swf=/usr' '--with-mm' 'i586-suse-linux'
p2p
Posts: 95
Joined: 2003-04-07 06:57
 

Re: PHP kompilieren

Post by p2p »

weiß keiner wo das problem liegt?
mark
Posts: 295
Joined: 2003-04-15 16:48
Location: Oldenburg
Contact:
 

Re: PHP kompilieren

Post by mark »

Hi,
cc1: warning: changing search order for system directory "/usr/local/include"
cc1: warning: as it has already been specified as a non-system directory
1. Das ist nur eine Warnung.
2. Tritt die erst ab Suse 8.1 auf (weil neuer gcc 3.2, vorher 2.9x)
3. Hat die irgendwas mit den Include-Pfaden zu tun. Anscheinend ist das obige Verzeichnis zweimal definiert. Einmal als include-dir und einmal als non-system dir.
4. Brauchst du dir keine sorgen drum zumachen, kannste einfach ignorieren.
5. Ist im gcc 3.2.1 gefixed, aber nicht im gcc 3.2.0 (welchen du wahrscheinlich verwendest, weil der in SuSE 8.1 drin ist, wenn ich mich nicht irre).

hab hier gerade mal einen Beitrag gefunden:
http://gcc.gnu.org/ml/gcc-bugs/2002-10/msg01053.html

Gruß
Mark
p2p
Posts: 95
Joined: 2003-04-07 06:57
 

Re: PHP kompilieren

Post by p2p »

Das klingt doch schonmal gut, danke. Ich werds nachher nochmal ausprobieren.
p2p
Posts: 95
Joined: 2003-04-07 06:57
 

Re: PHP kompilieren

Post by p2p »

Jetzt mal was andres:
Beim Ausführen von "make" kommt nach einiger Zeit
In file included from /home/root/install/php-4.3.1/ext/odbc/php_odbc.c:37:
/home/root/install/php-4.3.1/ext/odbc/php_odbc_includes.h:94:18: isql.h: No such file or directory
/home/root/install/php-4.3.1/ext/odbc/php_odbc_includes.h:95:21: isqlext.h: No such file or directory
In file included from /home/root/install/php-4.3.1/ext/odbc/php_odbc.c:37:
/home/root/install/php-4.3.1/ext/odbc/php_odbc_includes.h:208: parse error before "HENV"
/home/root/install/php-4.3.1/ext/odbc/php_odbc_includes.h:208: warning: no semicolon at end of struct or union
/home/root/install/php-4.3.1/ext/odbc/php_odbc_includes.h:209: warning: data definition has no type or storage class
/home/root/install/php-4.3.1/ext/odbc/php_odbc_includes.h:211: `SQL_MAX_MESSAGE_LENGTH' undeclared here (not in a function)
/home/root/install/php-4.3.1/ext/odbc/php_odbc_includes.h:214: parse error before '}' token
/home/root/install/php-4.3.1/ext/odbc/php_odbc_includes.h:214: warning: data definition has no type or storage class
/home/root/install/php-4.3.1/ext/odbc/php_odbc_includes.h:220: parse error before "SDWORD"
/home/root/install/php-4.3.1/ext/odbc/php_odbc_includes.h:220: warning: no semicolon at end of struct or union
/home/root/install/php-4.3.1/ext/odbc/php_odbc_includes.h:221: warning: data definition has no type or storage class
/home/root/install/php-4.3.1/ext/odbc/php_odbc_includes.h:224: parse error before "HSTMT"
/home/root/install/php-4.3.1/ext/odbc/php_odbc_includes.h:224: warning: no semicolon at end of struct or union
/home/root/install/php-4.3.1/ext/odbc/php_odbc_includes.h:226: parse error before '*' token
/home/root/install/php-4.3.1/ext/odbc/php_odbc_includes.h:226: warning: data definition has no type or storage class
/home/root/install/php-4.3.1/ext/odbc/php_odbc_includes.h:227: parse error before "numcols"
/home/root/install/php-4.3.1/ext/odbc/php_odbc_includes.h:227: warning: data definition has no type or storage class
/home/root/install/php-4.3.1/ext/odbc/php_odbc_includes.h:228: parse error before "numparams"
/home/root/install/php-4.3.1/ext/odbc/php_odbc_includes.h:228: warning: data definition has no type or storage class
/home/root/install/php-4.3.1/ext/odbc/php_odbc_includes.h:235: parse error before '*' token
/home/root/install/php-4.3.1/ext/odbc/php_odbc_includes.h:235: warning: data definition has no type or storage class
/home/root/install/php-4.3.1/ext/odbc/php_odbc_includes.h:236: parse error before '}' token
/home/root/install/php-4.3.1/ext/odbc/php_odbc_includes.h:236: warning: data definition has no type or storage class
/home/root/install/php-4.3.1/ext/odbc/php_odbc_includes.h:252: `SQL_MAX_MESSAGE_LENGTH' undeclared here (not in a function)
/home/root/install/php-4.3.1/ext/odbc/php_odbc_includes.h:255: confused by earlier errors, bailing out
make: *** [ext/odbc/php_odbc.lo] Error 1
Kann mir das jemand erklären?
captaincrunch
Userprojekt
Userprojekt
Posts: 7066
Joined: 2002-10-09 14:30
Location: Dorsten
Contact:
 

Re: PHP kompilieren

Post by captaincrunch »

Wozu brauchst du odbc-Extensions ?
DebianHowTo
echo "[q]sa[ln0=aln256%Pln256/snlbx]sb729901041524823122snlbxq"|dc
mark
Posts: 295
Joined: 2003-04-15 16:48
Location: Oldenburg
Contact:
 

Re: PHP kompilieren

Post by mark »

Hi,
p2p wrote:Jetzt mal was andres:
Beim Ausführen von "make" kommt nach einiger Zeit
In file included from /home/root/install/php-4.3.1/ext/odbc/php_odbc.c:37:
/home/root/install/php-4.3.1/ext/odbc/php_odbc_includes.h:94:18: isql.h: No such file or directory
/home/root/install/php-4.3.1/ext/odbc/php_odbc_includes.h:95:21: isqlext.h: No such file or directory

Kann mir das jemand erklären?
für odbc fehlt dir wohl noch ein devel-paket...

Das sieht man immer an den "No such file or directory" und den .h dateien...

Aber wie CaptainCrunch frag ich mich, wozu du odbc unterstützung brauchst.

Gruß
Mark
p2p
Posts: 95
Joined: 2003-04-07 06:57
 

Re: PHP kompilieren

Post by p2p »

Ok, jetzt noch eine Frage:
Ich will das PHP neu kompilieren dass von 1und1 auf dem Root-Server von vorne rein draufliegt.
Dazu benutze ich folgenden code:

Code: Select all

'./configure' '--prefix=/usr/share' '--datadir=/usr/share/php' '--bindir=/usr/bin' '--libdir=/usr/share' '--includedir=/usr/include' '--with-_lib=lib' '--with-config-file-path=/etc' '--with-exec-dir=/usr/lib/php/bin' '--disable-debug' '--enable-bcmath' '--enable-calendar' '--enable-ctype' '--enable-dbase' '--enable-discard-path' '--enable-exif' '--enable-filepro' '--enable-force-cgi-redirect' '--enable-ftp' '--enable-gd-imgstrttf' '--enable-gd-native-ttf' '--enable-inline-optimization' '--enable-magic-quotes' '--enable-mbstr-enc-trans' '--enable-mbstring' '--enable-memory-limit' '--enable-safe-mode' '--enable-shmop' '--enable-sigchild' '--enable-sysvsem' '--enable-sysvshm' '--enable-track-vars' '--enable-trans-sid' '--enable-versioning' '--enable-wddx' '--with-bz2' '--with-dom=/usr/include/libxml2' '--with-ftp' '--with-gdbm' '--with-gettext' '--with-gmp' '--with-jpeg-dir=/usr' '--with-ldap=yes' '--with-mcal=/usr' '--with-mcrypt' '--with-mysql=/usr' '--with-ndbm' '--with-png-dir=/usr' '--with-snmp' '--with-t1lib' '--with-tiff-dir=/usr' '--with-ttf' '--with-freetype-dir=yes' '--with-xml' '--with-xpm-dir=/usr/X11R6' '--with-zlib=yes' '--with-gd' '--with-openssl' '--with-curl' '--with-swf=./dist/' '--with-imap-ssl' '--with-mm' 'i586-suse-linux'

Code: Select all

make; make install
Aber letztendlich hat PHP immer noch die Version 4.2.2 anstatt der neuen 4.3.1. Weiß jemand wo das Problem liegt?
majortermi
Userprojekt
Userprojekt
Posts: 916
Joined: 2002-06-17 16:09
 

Re: PHP kompilieren

Post by majortermi »

p2p wrote:Ok, jetzt noch eine Frage:
Ich will das PHP neu kompilieren dass von 1und1 auf dem Root-Server von vorne rein draufliegt.
Dazu benutze ich folgenden code:[...]

Aber letztendlich hat PHP immer noch die Version 4.2.2 anstatt der neuen 4.3.1. Weiß jemand wo das Problem liegt?
Du kompilierst die CGI/CLI-Version von PHP, es ist aber als Apache Modul vorinstalliert. Du musst also auch das Apache Modul kompilieren und dann das vorhandene durch die neue Version ersetzen.
Erst nachlesen, dann nachdenken, dann nachfragen... :)
Warum man sich an diese Reihenfolge halten sollte...
p2p
Posts: 95
Joined: 2003-04-07 06:57
 

Re: PHP kompilieren

Post by p2p »

oups, shit. stimmt :)
danke
p2p
Posts: 95
Joined: 2003-04-07 06:57
 

Re: PHP kompilieren

Post by p2p »

Ich hab jetzt mal versucht das bestehende PHP 4.3.1 auf PHP 4.2.3 "downzugraden", dabei kommt bei "make" aber folgender Fehler:
In file included from gd.c:83:
gd_ctx.c: In function `_php_image_output_ctx':
gd_ctx.c:70: structure has no member named `free'
gd_ctx.c:98: structure has no member named `free'
gd.c: In function `_php_image_type':
gd.c:1014: structure has no member named `free'
gd.c:1017: structure has no member named `free'
gd.c: In function `_php_image_create_from':
gd.c:1209: structure has no member named `free'
make[3]: *** [gd.lo] Error 1
make[3]: Leaving directory `/home/root/php2/php-4.2.3/ext/gd'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/home/root/php2/php-4.2.3/ext/gd'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/root/php2/php-4.2.3/ext'
make: *** [all-recursive] Error 1
Woran kann das liegen?
mark
Posts: 295
Joined: 2003-04-15 16:48
Location: Oldenburg
Contact:
 

Re: PHP kompilieren

Post by mark »

Hi,

das liegt daran, dass die GD 2.0.X nicht von Haus aus mit php 4.2.3 funktioniert...

Du musst PHP 4.2.3 patchen, bevor du gd 2 verwenden kannst.

Siehe hier:
http://www.boutell.com/gd/phppatch.html

Gruß
Mark
p2p
Posts: 95
Joined: 2003-04-07 06:57
 

Re: PHP kompilieren

Post by p2p »

Danke, hat geklappt.
Post Reply