Π ΡΡΠΎΠΌ ΡΠ°Π·Π΄Π΅Π»Π΅ ΡΠΎΠ±ΡΠ°Π½Ρ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΠΎΠ±ΡΠΈΠ΅ ΠΎΡΠΈΠ±ΠΊΠΈ, Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡΡΠΈΠ΅ Π½Π° ΡΡΠ°ΠΏΠ΅ ΡΠ±ΠΎΡΠΊΠΈ.
ΠΠ°ΠΌ Π½ΡΠΆΠ΅Π½ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π½ΡΠΉ ΠΏΠ°ΠΊΠ΅Ρ GNU autoconf Π΄Π»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ ΡΠ³Π΅Π½Π΅ΡΠΈΡΠΎΠ²Π°ΡΡ
ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΎΠ½Π½ΡΠΉ ΡΠΊΡΠΈΠΏΡ ΠΈΠ· configure.in.
ΠΠΎΡΠ»Π΅ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ ΠΈΡΡ
ΠΎΠ΄Π½ΠΈΠΊΠΎΠ² Ρ Git ΡΠ΅ΡΠ²Π΅ΡΠ° ΠΏΡΠΎΡΡΠΎ Π·Π°ΠΏΡΡΡΠΈΡΠ΅
./buildconf Π² Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ Π²Π΅ΡΡ
Π½Π΅Π³ΠΎ ΡΡΠΎΠ²Π½Ρ.
(Π’Π°ΠΊΠΆΠ΅, Π΅ΡΠ»ΠΈ Π²Ρ Π·Π°ΠΏΡΡΠΊΠ°Π΅ΡΠ΅ configure Π±Π΅Π· ΠΎΠΏΡΠΈΠΈ
--enable-maintainer-mode, ΡΠΎ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΎΠ½Π½ΡΠΉ
ΡΠΊΡΠΈΠΏΡ Π½Π΅ Π±ΡΠ΄Π΅Ρ ΠΏΠ΅ΡΠ΅ΡΡΡΠΎΠ΅Π½ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΠΏΡΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ ΡΠ°ΠΉΠ»Π°
configure.in, ΠΏΠΎΡΡΠΎΠΌΡ Π²Π°ΠΌ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ Π΄Π΅Π»Π°ΡΡ ΡΡΠΎ
Π²ΡΡΡΠ½ΡΡ, ΠΊΠΎΠ³Π΄Π° Π²Ρ Π·Π°ΠΌΠ΅ΡΠΈΡΠ΅, ΡΡΠΎ configure.in ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ»ΡΡ.
ΠΠ΄ΠΈΠ½ ΠΈΠ· ΡΠΈΠΌΠΏΡΠΎΠΌΠΎΠ² - ΠΏΠΎΡΠ²Π»Π΅Π½ΠΈΠ΅ ΡΠ°ΠΊΠΈΡ
Π²Π΅ΡΠ΅ΠΉ ΠΊΠ°ΠΊ @VARIABLE@ Π² Π²Π°ΡΠ΅ΠΌ Makefile
ΠΏΠΎΡΠ»Π΅ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ configure ΠΈΠ»ΠΈ config.status.)
ΠΠ»Ρ configure/setup ΡΠΊΡΠΈΠΏΡΠ° Π²Π°ΠΌ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΡΠΊΠ°Π·Π°ΡΡ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ Π²Π΅ΡΡ Π½Π΅Π³ΠΎ ΡΡΠΎΠ²Π½Ρ, Π² ΠΊΠΎΡΠΎΡΠΎΠΉ Π½Π°Ρ ΠΎΠ΄ΡΡΡΡ ΠΈΡΡ ΠΎΠ΄Π½ΠΈΠΊΠΈ Apache. ΠΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ Π²Π°ΠΌ Π½Π°Π΄ΠΎ Π·Π°Π΄Π°ΡΡ --with-apache=/path/to/apache, Π° Π½Π΅ --with-apache=/path/to/apache/src.
./configure)
Π²Ρ Π½Π°ΡΠ°Π»ΠΊΠΈΠ²Π°Π΅ΡΠ΅ΡΡ Π½Π° ΠΎΡΠΈΠ±ΠΊΡ, ΡΡ
ΠΎΠΆΡΡ ΡΠΎ ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ:
ΠΠ΅ Π·Π°Π±ΡΠ΄ΡΡΠ΅ Π²Π½ΠΈΠΌΠ°ΡΠ΅Π»ΡΠ½ΠΎ ΠΏΡΠΎΡΠΈΡΠ°ΡΡ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ ΠΏΠΎ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠ΅ ΠΈ Π·Π°ΠΌΠ΅ΡΡΡΠ΅, ΡΡΠΎ Π΄Π»Ρ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ PHP Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΠΊΠ°ΠΊ flex, ΡΠ°ΠΊ ΠΈ bison. Π Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ Π²Π°ΡΠΈΡ Π½Π°ΡΡΡΠΎΠ΅ΠΊ, ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΠ΅ bison ΠΈ flex Π»ΠΈΠ±ΠΎ ΠΈΠ· ΠΈΡΡ ΠΎΠ΄Π½ΠΈΠΊΠΎΠ², Π»ΠΈΠ±ΠΎ ΠΈΠ· ΠΏΠ°ΠΊΠ΅ΡΠΎΠ², Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, RPM.
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ΄Π΅Π»Π°ΡΡ ΡΠ°ΠΊ, ΡΡΠΎ ΡΠΊΡΠΈΠΏΡ configure Π±ΡΠ΄Π΅Ρ ΠΈΡΠΊΠ°ΡΡ ΡΠ°ΠΉΠ»Ρ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΎΠ² ΠΈΠ»ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ Π² Π½Π΅ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΡ ΠΌΠ΅ΡΡΠ°Ρ , Π·Π°Π΄Π°Π² Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΠ»Π°Π³ΠΈ Π΄Π»Ρ Π‘ ΠΏΡΠ΅ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ° ΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²ΡΠΈΠΊΠ°, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ:
CPPFLAGS=-I/path/to/include LDFLAGS=-L/path/to/library ./configure
env CPPFLAGS=-I/path/to/include LDFLAGS=-L/path/to/library ./configure
yytname undeclared.
ΠΠ°ΠΌ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΎΠ±Π½ΠΎΠ²ΠΈΡΡ Π²Π°ΡΡ Π²Π΅ΡΡΠΈΡ Bison. ΠΠΎΡΠ»Π΅Π΄Π½ΡΡ Π²Π΅ΡΡΠΈΡ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ Π½Π° » http://www.gnu.org/software/bison/bison.html.
ΠΠ΅ΠΊΠΎΡΠΎΡΡΠ΅ ΡΡΠ°ΡΡΠ΅ Π²Π΅ΡΡΠΈΠΈ make ΠΎΡΠΈΠ±ΠΎΡΠ½ΠΎ Π½Π΅ ΠΏΠΎΠΌΠ΅ΡΠ°ΡΡ ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ ΡΠ°ΠΉΠ»Ρ Π² ΠΏΠΎΠ΄Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ functions Π² ΡΠΎΠΉ ΠΆΠ΅ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ. ΠΠΎΠΏΡΠΎΠ±ΡΠΉΡΠ΅ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ cp *.o functions ΠΈ Π·Π°ΡΠ΅ΠΌ ΠΏΠ΅ΡΠ΅Π·Π°ΠΏΡΡΡΠΈΡΡ make. ΠΡΠ»ΠΈ ΡΡΠΎ ΠΏΠΎΠΌΠΎΠ³Π»ΠΎ, ΡΠΎ Π²Π°ΠΌ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ Π½Π°Π΄ΠΎ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΡΠ²Π΅ΠΆΡΡ Π²Π΅ΡΡΠΈΡ GNU make.
ΠΠΎΡΠΌΠΎΡΡΠΈΡΠ΅ Π½Π° ΡΡΡΠΎΠΊΡ Π΄Π»Ρ ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²ΠΊΠΈ ΠΈ ΡΠ±Π΅Π΄ΠΈΡΠ΅ΡΡ, ΡΡΠΎ Π²ΡΠ΅ Π½ΡΠΆΠ½ΡΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Ρ Π² ΠΊΠΎΠ½ΡΠ΅. Π§Π°ΡΡΠΎ Π·Π°Π±ΡΠ²Π°ΡΡ '-ldl' ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ, Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠ΅ Π΄Π»Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ Π²ΠΊΠ»ΡΡΡΠ½Π½ΡΡ Π²ΡΡΡΠ½ΡΡ Π±Π°Π· Π΄Π°Π½Π½ΡΡ .
ΠΠ΅ΠΊΠΎΡΠΎΡΡΠ΅ Π»ΡΠ΄ΠΈ ΡΠ°ΠΊΠΆΠ΅ ΡΠΎΠΎΠ±ΡΠ°ΡΡ, ΡΡΠΎ ΠΏΡΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²ΠΊΠ΅ Ρ Apache ΠΈΠΌ ΠΏΡΠΈΡΠ»ΠΎΡΡ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ '-ldl' ΡΡΠ°Π·Ρ ΠΏΠΎΡΠ»Π΅ libphp4.a.
ΠΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ ΠΏΠΎ ΠΊΠ°ΠΊΠΎΠΉ-ΡΠΎ ΠΏΡΠΈΡΠΈΠ½Π΅ ΠΌΠΎΠ΄ΡΠ»Ρ PHP Π½Π΅ Π²ΡΠ·ΡΠ²Π°Π΅ΡΡΡ. ΠΠ΅ΡΠ΅Π΄ ΡΠ΅ΠΌ ΠΊΠ°ΠΊ ΠΎΠ±ΡΠ°ΡΠ°ΡΡΡΡ Π·Π° ΠΏΠΎΠΌΠΎΡΡΡ, ΠΏΡΠΎΠ²Π΅ΡΡΡΠ΅ ΡΡΠΈ Π²Π΅ΡΠΈ:
/path/to/binary/httpd -l
ΠΡΠ»ΠΈ Π²Ρ Π½Π΅ Π²ΠΈΠ΄ΠΈΡΠ΅ mod_php4.c Π² ΡΠΏΠΈΡΠΊΠ΅, ΡΠΎ Π²Ρ
Π·Π°ΠΏΡΡΠΊΠ°Π΅ΡΠ΅ Π½Π΅ ΡΠΎΡ Π±ΠΈΠ½Π°ΡΠ½ΠΈΠΊ. ΠΠ°ΠΉΠ΄ΠΈΡΠ΅ ΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΠ΅ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΡΠΉ Π±ΠΈΠ½Π°ΡΠ½ΠΈΠΊ.
Apache .conf
ΡΠ°ΠΉΠ»ΠΎΠ². ΠΡΠΎ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±ΡΡΡ: AddType application/x-httpd-php .php
Π’Π°ΠΊΠΆΠ΅ ΡΠ±Π΅Π΄ΠΈΡΠ΅ΡΡ, ΡΡΠΎ ΡΡΠ° ΡΡΡΠΎΠΊΠ° AddType Π½Π΅ ΠΏΠΎΠΏΠ°Π»Π° Π²Π½ΡΡΡΡ
<Virtualhost> ΠΈΠ»ΠΈ <Directory> Π±Π»ΠΎΠΊΠ°, ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΡΡΠΎ Π½Π΅
Π΄Π°ΡΡ
Π΅ΠΉ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ ΠΌΠ΅ΡΡΠΎΠ½Π°Ρ
ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅ΠΌ Π²Π°ΡΠ΅Π³ΠΎ ΡΠ΅ΡΡΠΎΠ²ΠΎΠ³ΠΎ ΡΠΊΡΠΈΠΏΡΠ°.
--activate-module=src/modules/php4/libphp4.a,
Π½ΠΎ ΡΠ°ΠΊΠΎΠΉ ΡΠ°ΠΉΠ» Π½Π΅ ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ, ΠΏΠΎΡΡΠΎΠΌΡ Ρ Π·Π°ΠΌΠ΅Π½ΠΈΠ» ΡΡΠΎ Π½Π°
--activate-module=src/modules/php4/libmodphp4.a
ΠΈ ΠΎΠ½ΠΎ Π½Π΅ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ!? Π§ΡΠΎ ΠΏΡΠΎΠΈΡΡ
ΠΎΠ΄ΠΈΡ?
ΠΠ°ΠΌΠ΅ΡΡΡΠ΅, ΡΡΠΎ ΡΠ°ΠΉΠ» libphp4.a Π½Π΅ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡΡΡΠ΅ΡΡΠ²ΠΎΠ²Π°ΡΡ. ΠΠ½ Π±ΡΠ΄Π΅Ρ ΡΠΎΠ·Π΄Π°Π½ Π² ΠΏΡΠΎΡΠ΅ΡΡΠ΅!
--activate-module=src/modules/php4/libphp4.a
ΠΎΠ½ Π³ΠΎΠ²ΠΎΡΠΈΡ, ΡΡΠΎ ΠΌΠΎΠΉ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ Π½Π΅ ANSI-ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΡΠΉ.
Π‘ΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΠΎΠ± ΠΎΡΠΈΠ±ΠΊΠ΅ Π²Π²ΠΎΠ΄ΠΈΡ Π² Π·Π°Π±Π»ΡΠΆΠ΄Π΅Π½ΠΈΠ΅; ΡΡΠΎ ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½ΠΎ Π² Π±ΠΎΠ»Π΅Π΅ ΡΠ²Π΅ΠΆΠΈΡ Π²Π΅ΡΡΠΈΡΡ Apache.
ΠΡΠΎΠ²Π΅ΡΡΡΠ΅ ΡΡΠΈ Π²Π΅ΡΠΈ. ΠΠΎ-ΠΏΠ΅ΡΠ²ΡΡ , ΠΏΠΎ ΠΊΠ°ΠΊΠΎΠΉ-ΡΠΎ ΠΏΡΠΈΡΠΈΠ½Π΅, ΠΊΠΎΠ³Π΄Π° Apache ΡΠΎΠ·Π΄Π°ΡΡ Perl ΡΠΊΡΠΈΠΏΡ apxs, ΠΎΠ½ ΠΏΠΎΠ»ΡΡΠ°Π΅ΡΡΡ Π±Π΅Π· ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠ° ΠΈ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ , Π·Π°Π΄Π°ΡΡΠΈΡ ΡΠ»Π°Π³ΠΈ. ΠΠ°ΠΉΠ΄ΠΈΡΠ΅ Π²Π°Ρ apxs ΡΠΊΡΠΈΠΏΡ (ΠΏΠΎΠΏΡΠΎΠ±ΡΠΉΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ which apxs), ΠΈΠ½ΠΎΠ³Π΄Π° ΠΎΠ½ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ ΠΊΠ°ΠΊ /usr/local/apache/bin/apxs ΠΈΠ»ΠΈ /usr/sbin/apxs. ΠΡΠΊΡΠΎΠΉΡΠ΅ Π΅Π³ΠΎ ΠΈ Π½Π°ΠΉΠ΄ΠΈΡΠ΅ ΡΡΡΠΎΠΊΠΈ, ΡΡ ΠΎΠΆΠΈΠ΅ Ρ ΡΡΠΈΠΌΠΈ:
my $CFG_CFLAGS_SHLIB = ' '; # substituted via Makefile.tmpl my $CFG_LD_SHLIB = ' '; # substituted via Makefile.tmpl my $CFG_LDFLAGS_SHLIB = ' '; # substituted via Makefile.tmpl
my $CFG_CFLAGS_SHLIB = '-fpic -DSHARED_MODULE'; # substituted via Makefile.tmpl my $CFG_LD_SHLIB = 'gcc'; # substituted via Makefile.tmpl my $CFG_LDFLAGS_SHLIB = q(-shared); # substituted via Makefile.tmpl
my $CFG_LIBEXECDIR = 'modules'; # substituted via APACI install
my $CFG_LIBEXECDIR = '/usr/lib/apache'; # substituted via APACI install
RUSAGE_.
ΠΡΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ make Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ, Π΅ΡΠ»ΠΈ Π²Ρ ΡΡΠ°Π»ΠΊΠΈΠ²Π°Π΅ΡΠ΅ΡΡ Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ°ΠΌΠΈ, ΠΏΠΎΡ ΠΎΠΆΠΈΠΌΠΈ Π½Π° ΡΠ»Π΅Π΄ΡΡΡΠ΅Π΅:
microtime.c: In function `php_if_getrusage': microtime.c:94: storage size of `usg' isn't known microtime.c:97: `RUSAGE_SELF' undeclared (first use in this function) microtime.c:97: (Each undeclared identifier is reported only once microtime.c:97: for each function it appears in.) microtime.c:103: `RUSAGE_CHILDREN' undeclared (first use in this function) make[3]: *** [microtime.lo] Error 1 make[3]: Leaving directory `/home/master/php-4.0.1/ext/standard' make[2]: *** [all-recursive] Error 1 make[2]: Leaving directory `/home/master/php-4.0.1/ext/standard' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/home/master/php-4.0.1/ext' make: *** [all-recursive] Error 1
ΠΠ°ΡΠ° ΡΠΈΡΡΠ΅ΠΌΠ° ΡΠ»ΠΎΠΌΠ°Π½Π°. ΠΡ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΈΡΠΏΡΠ°Π²ΠΈΡΡ Π²Π°ΡΠΈ ΡΠ°ΠΉΠ»Ρ /usr/include, ΡΡΡΠ°Π½ΠΎΠ²ΠΈΠ² ΠΏΠ°ΠΊΠ΅Ρ glibc-devel, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΠ΅Ρ Π²Π°ΡΠ΅ΠΉ glibc. ΠΡΠΎ Π°Π±ΡΠΎΠ»ΡΡΠ½ΠΎ Π½Π΅ Π·Π°Π²ΠΈΡΠΈΡ ΠΎΡ PHP. ΠΠ»Ρ Π΄ΠΎΠΊΠ°Π·Π°ΡΠ΅Π»ΡΡΡΠ²Π° ΠΏΠΎΠΏΡΠΎΠ±ΡΠΉΡΠ΅ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΠΏΡΠΎΡΡΠΎΠΉ ΡΠ΅ΡΡ:
$ cat >test.c <<X #include <sys/resource.h> X $ gcc -E test.c >/dev/null
make Ρ ΠΏΠΎΠ»ΡΡΠ°Ρ ΠΎΡΠΈΠ±ΠΊΡ ΡΠΈΠΏΠ° ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ:
ext/mysql/libmysqlclient/my_tempnam.o(.text+0x46): In function
my_tempnam': /php4/ext/mysql/libmysqlclient/my_tempnam.c:103: the use
of tempnam' is dangerous, better use mkstemp',
Π² ΡΡΠΌ Π΄Π΅Π»ΠΎ?
ΠΠΎ-ΠΏΠ΅ΡΠ²ΡΡ
, Π²Π°ΠΆΠ½ΠΎ ΠΏΠΎΠ½ΠΈΠΌΠ°ΡΡ, ΡΡΠΎ ΡΡΠΎ Warning (ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΠ΅),
Π° Π½Π΅ ΡΠ°ΡΠ°Π»ΡΠ½Π°Ρ ΠΎΡΠΈΠ±ΠΊΠ°. Π’Π°ΠΊ ΠΊΠ°ΠΊ ΡΡΠΎ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π΅, ΡΡΠΎ Π²ΡΠ²ΠΎΠ΄ΠΈΡΡΡ Π²ΠΎ Π²ΡΠ΅ΠΌΡ
make, ΠΎΠ½ΠΎ ΠΌΠΎΠΆΠ΅Ρ Π²ΡΠ³Π»ΡΠ΄Π΅ΡΡ ΠΊΠ°ΠΊ ΡΠ°ΡΠ°Π»ΡΠ½Π°Ρ ΠΎΡΠΈΠ±ΠΊΠ°,
Π½ΠΎ ΡΡΠΎ Π½Π΅ ΡΠ°ΠΊ. ΠΠΎΠ½Π΅ΡΠ½ΠΎ, Π΅ΡΠ»ΠΈ Π²Π°Ρ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ ΡΠΌΠΈΡΠ°Π΅Ρ Π½Π° ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΡΡ
,
(Warnings), ΡΠΎ ΡΠΎΠ³Π΄Π° Π΄Π°. Π’Π°ΠΊΠΆΠ΅ ΠΈΠΌΠ΅ΠΉΡΠ΅ Π²Π²ΠΈΠ΄Ρ, ΡΡΠΎ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° MySQL
Π²ΠΊΠ»ΡΡΠ΅Π½Π° ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ.
ΠΠ°ΠΌΠ΅ΡΠ°Π½ΠΈΠ΅:
ΠΠ°ΡΠΈΠ½Π°Ρ Ρ PHP 4.3.2 Π²Ρ ΡΠ°ΠΊΠΆΠ΅ Π±ΡΠ΄Π΅ΡΠ΅ Π²ΠΈΠ΄Π΅ΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΡΠ΅ΠΊΡΡ ΠΏΠΎΡΠ»Π΅ ΡΠΎΠ³ΠΎ ΠΊΠ°ΠΊ ΡΠ±ΠΎΡΠΊΠ° (make) Π·Π°Π²Π΅ΡΡΠΈΡΡΡ:
Build complete.
(It is safe to ignore warnings about tempnam and tmpnam).
(Π‘Π±ΠΎΡΠΊΠ° Π·Π°Π²Π΅ΡΡΠ΅Π½Π°, ΠΌΠΎΠΆΠ½ΠΎ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎ ΠΈΠ³Π½ΠΎΡΠΈΡΠΎΠ²Π°ΡΡ
ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΡ ΠΎ tempnam ΠΈ tmpnam.)
ΠΠΈΠ±ΠΎ ΡΠΌΠΎΡΡΠΈΡΠ΅ ΡΠ°ΠΉΠ» config.nice Π² Π΄Π΅ΡΠ΅Π²Π΅ ΠΈΡΡ ΠΎΠ΄Π½ΠΈΠΊΠΎΠ² Π²Π°ΡΠ΅ΠΉ ΡΠ΅ΠΊΡΡΠ΅ΠΉ PHP ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ, Π»ΠΈΠ±ΠΎ, Π΅ΡΠ»ΠΈ ΡΡΠΎ Π½Π΅Π΄ΠΎΡΡΡΠΏΠ½ΠΎ, ΠΏΡΠΎΡΡΠΎ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΠ΅ ΡΠΊΡΠΈΠΏΡ:
<?php phpinfo(); ?>Π£Π±Π΅Π΄ΠΈΡΠ΅ΡΡ, ΡΡΠΎ Π²Π°ΡΠ° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° GD ΠΈ PHP ΠΊΠΎΠΌΠΏΠΎΠ½ΡΡΡΡΡ Ρ ΠΎΠ΄Π½ΠΈΠΌΠΈ ΠΈ ΡΠ΅ΠΌΠΈ ΠΆΠ΅ Π·Π°Π²ΠΈΡΠΈΠΌΡΠΌΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΠΌΠΈ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, libpng).
ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π΅ GNU ΡΡΠΈΠ»ΠΈΡ Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ PHP ΠΌΠΎΠΆΠ΅Ρ Π²ΡΠ·Π²Π°ΡΡ
ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ.
Π§ΡΠΎΠ±Ρ Π±ΡΡΡ ΡΠ²Π΅ΡΠ΅Π½Π½ΡΠΌ, ΡΡΠΎ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΡ PHP Π±ΡΠ΄Π΅Ρ ΡΠ°Π±ΠΎΡΠ°ΡΡ,
ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ GNU ΡΡΠΈΠ»ΠΈΡΡ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π² Solaris, ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅
SunOS BSD-ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΠΉ ΠΈΠ»ΠΈ Solaris Π²Π΅ΡΡΠΈΠΈ sed
Π½Π΅ Π±ΡΠ΄Π΅Ρ ΡΠ°Π±ΠΎΡΠ°ΡΡ, Π° GNU ΠΈΠ»ΠΈ Sun POSIX (xpg4) Π²Π΅ΡΡΠΈΠΈ
sed Π±ΡΠ΄Π΅Ρ.
Π‘ΡΡΠ»ΠΊΠΈ: » GNU sed,
» GNU flex, and
» GNU bison.