PHP 4.0 Bug #2081: Apache 1.3.6 fails to link due to error in libphp4.module file.
| From: | cafuego at creativecontingencies dot com | Date: | Tue, 17 Aug 1999 05:09:39 +0000 |
| Subject: | PHP 4.0 Bug #2081: Apache 1.3.6 fails to link due to error in libphp4.module file. | ||
| Groups: | php.dev | ||
| Request: | Send a blank email to php-dev+get-9903@lists.php.net to get a copy of this message | ||
From: cafuego@creativecontingencies.com
Operating system: Linux 2.3.9 (Slackware 3.6 libc5)
PHP version: 4.0 Beta 2
PHP Bug Type: Compile Failure
Bug description: Apache 1.3.6 fails to link due to error in libphp4.module file.
My configure line: ./configure --with-apache=../apache_1.3.6 --with-mysql --enable-track-vars
--enable-shared=yes --with-pgsql --with-gd --with-ttf
--enable-freetype-4bit-antialias-hack--prefix=/usr/local/php4
PHP and Apache compilation are fine, but linking of Apache fails as follows:
--
ld -rpath /usr/local/lib -rpath /usr/lib/mysql -rpath /usr/local/pgsql/lib -Bsha
reable -o libphp4.so mod_php4.so-o libmodphp4-so.a -Wl,-rpath,/usr/local/lib -W
l,-rpath,/usr/lib/mysql -Wl,-rpath,/usr/local/pgsql/lib -Lmodules/php4 -L../modu
les/php4 -L../../modules/php4 -lmodphp4 -L/usr/local/www/archives/php-4.0b2/ext/
pcre/pcrelib -lpcre -L/usr/local/www/archives/php-4.0b2/regex -lregex -lgdbm -l
gd -L/usr/local/lib -lttf -L/usr/lib/mysql -lmysqlclient -L/usr/local/pgsql/
lib -lpq -ldl -lm -rdynamic -lm -ldl -lpng -lz
ld: unrecognized option `-Wl,-rpath,/usr/local/lib'
make[4]: *** [libphp4.so] Error 1
make[3]: *** [all] Error 1
make[2]: *** [subdirs] Error 1
make[2]: Leaving directory `/usr/local/www/archives/apache_1.3.6/src'
make[1]: *** [build-std] Error 2
make[1]: Leaving directory `/usr/local/www/archives/apache_1.3.6'
make: *** [build] Error 2
root@gateway:/usr/local/www/archives/apache_1.3.6
--
ld --version says: GNU ld 2.8.2
Removing the -Wl,-rpath,/usr/local/lib bits from the libphp4.module file and reconfiguring and
compiling get me to:
--
ld -rpath /usr/local/lib -rpath /usr/lib/mysql -rpath /usr/local/pgsql/lib -Bsha
reable -o libphp4.so mod_php4.so-o libmodphp4-so.a -Lmodules/php4 -L../modules/
php4 -L../../modules/php4 -lmodphp4 -L/usr/local/www/archives/php-4.0b2/ext/pcre
/pcrelib -lpcre -L/usr/local/www/archives/php-4.0b2/regex -lregex -lgdbm -lgd -
L/usr/local/lib -lttf -L/usr/lib/mysql -lmysqlclient -L/usr/local/pgsql/lib
-lpq -ldl -lm -rdynamic -lm -ldl -lpng -lz
ld: -r and -shared may not be used together
make[4]: *** [libphp4.so] Error 1
make[3]: *** [all] Error 1
make[2]: *** [subdirs] Error 1
make[2]: Leaving directory `/usr/local/www/archives/apache_1.3.6/src'
make[1]: *** [build-std] Error 2
make[1]: Leaving directory `/usr/local/www/archives/apache_1.3.6'
make: *** [build] Error 2
root@gateway:/usr/local/www/archives/apache_1.3.6
--
Removing all instances of -r... from the libphp4.module file results in:
--
ld -Bshareable -o libphp4.so mod_php4.so-o libmodphp4-so.a -Lmodules/php4 -L../
modules/php4 -L../../modules/php4 -lmodphp4 -L/usr/local/www/archives/php-4.0b2/
ext/pcre/pcrelib -lpcre -L/usr/local/www/archives/php-4.0b2/regex -lregex -lgdb
m -lgd -L/usr/local/lib -lttf -L/usr/lib/mysql -lmysqlclient -L/usr/local/pg
sql/lib -lpq -ldl -lm -lm -ldl -lpng -lz
../../modules/php4/libmodphp4.a(main.o): In function `OnSetPrecision':
/usr/local/www/archives/php-4.0b2/main.c:107: multiple definition of `php3_ini_p
ath'
libmodphp4-so.a(main.o):/usr/local/www/archives/php-4.0b1/main.c:107: first defi
ned here
../../modules/php4/libmodphp4.a(main.o): In function `php3_apache_puts':
/usr/local/www/archives/php-4.0b2/main.c:243: multiple definition of `php3_apach
e_puts'
libmodphp4-so.a(main.o):/usr/local/www/archives/php-4.0b1/main.c:242: first defi
ned here
ld: Warning: size of symbol `php3_apache_puts' changed from 60 to 39 in main.o
../../modules/php4/libmodphp4.a(main.o): In function `php3_apache_putc':
/usr/local/www/archives/php-4.0b2/main.c:254: multiple definition of `php3_apach
e_putc'
libmodphp4-so.a(main.o):/usr/local/www/archives/php-4.0b1/main.c:253: first defi
ned here
ld: Warning: size of symbol `php3_apache_putc' changed from 67 to 46 in main.o
--
... and a whole lot more, complaining about different functions.