php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #10140 Apache fails to link - LD complains about GD
Submitted: 2001-04-03 12:01 UTC Modified: 2001-05-23 06:09 UTC
From: stevenf at shellnet dot co dot uk Assigned:
Status: Closed Package: Compile Failure
PHP Version: 4.0.4pl1 OS: FreeBSD 4.0
Private report: No CVE-ID: None
 [2001-04-03 12:01 UTC] stevenf at shellnet dot co dot uk
PHP config: 
./configure  --with-mysql --with-apache=../apache_1.3.19 --with-sysvshm --disable-debug --with-mcrypt --with-gd=
/home/stevenf/Software/gd-1.8.4

Apache config:
./configure --enable-module=speling --activate-module=src/modules/php4/libphp4.a --add-module=/home/stevenf/Software/mod_throttle-3.1.2/mod_throttle.c --activate-module=src/modules/auth_mysql/libauthmysql.a --enable-suexec --suexec-userdir=/usr/local/apache/share --suexec-caller=nobody

PHP compiles fine - no problems (it seems).
Apache compiles with no problems, untill the linking stage. Apache hasn't ever had any previous problems linking since I've tried to compile in the GD functions.

I'm running Apache 1.3.19, PHP 4.0.4pl1, GD 1.8.4, libpng-1.0.10, zlib-1.1.3 and jpeg-6b, although I'm not trying to use jpeg support for PHP just yet.

During the Apache 'make' process, I get:

[..snip..]

===> src/modules/auth_mysql
<=== src/modules/auth_mysql
<=== src/modules
gcc -c  -I./os/unix -I./include -I/usr/home/stevenf/Software/openssl-0.9.5a/include   -funsigned-char -DTARGET=\"httpsd\" -I/usr/home/stevenf/Software/php-4.0.4pl1 -I/usr/home/stevenf/Software/php-4.0.4pl1/main -I/usr/home/stevenf/Software/php-4.0.4pl1/main -I/usr/home/stevenf/Software/php-4.0.4pl1/Zend -I/usr/home/stevenf/Software/php-4.0.4pl1/Zend -I/usr/home/stevenf/Software/php-4.0.4pl1/TSRM -I/usr/home/stevenf/Software/php-4.0.4pl1/TSRM -I/usr/home/stevenf/Software/php-4.0.4pl1 -DUSE_EXPAT -I./lib/expat-lite -DNO_DL_NEEDED -DAPACHE_SSL `./apaci` modules.c
gcc -c  -I./os/unix -I./include -I/usr/home/stevenf/Software/openssl-0.9.5a/include   -funsigned-char -DTARGET=\"httpsd\" -I/usr/home/stevenf/Software/php-4.0.4pl1 -I/usr/home/stevenf/Software/php-4.0.4pl1/main -I/usr/home/stevenf/Software/php-4.0.4pl1/main -I/usr/home/stevenf/Software/php-4.0.4pl1/Zend -I/usr/home/stevenf/Software/php-4.0.4pl1/Zend -I/usr/home/stevenf/Software/php-4.0.4pl1/TSRM -I/usr/home/stevenf/Software/php-4.0.4pl1/TSRM -I/usr/home/stevenf/Software/php-4.0.4pl1 -DUSE_EXPAT -I./lib/expat-lite -DNO_DL_NEEDED -DAPACHE_SSL `./apaci` buildmark.c
gcc  -funsigned-char -DTARGET=\"httpsd\" -I/usr/home/stevenf/Software/php-4.0.4pl1 -I/usr/home/stevenf/Software/php-4.0.4pl1/main -I/usr/home/stevenf/Software/php-4.0.4pl1/main -I/usr/home/stevenf/Software/php-4.0.4pl1/Zend -I/usr/home/stevenf/Software/php-4.0.4pl1/Zend -I/usr/home/stevenf/Software/php-4.0.4pl1/TSRM -I/usr/home/stevenf/Software/php-4.0.4pl1/TSRM -I/usr/home/stevenf/Software/php-4.0.4pl1 -DUSE_EXPAT -I./lib/expat-lite -DNO_DL_NEEDED -DAPACHE_SSL `./apaci`     -o httpsd buildmark.o modules.o  modules/extra/libextra.a  modules/auth_mysql/libauth_mysql.a  modules/standard/libstandard.a  modules/ssl/libssl.a  modules/php4/libphp4.a  main/libmain.a  ./os/unix/libos.a  ap/libap.a  lib/expat-lite/libexpat.a  -R/home/stevenf/Software/gd-1.8.4 -R/usr/local/lib  -rdynamic -L/home/stevenf/Software/gd-1.8.4 -L/usr/local/lib -Lmodules/php4 -L../modules/php4 -L../../modules/php4 -lmodphp4  -lpam  -lmcrypt -lmcrypt -lgd -lpng -lz -lm -lcrypt    -lcrypt -L/usr/local/ssl/lib -lssl -lcrypto
/home/stevenf/Software/gd-1.8.4/libgd.a(gd.o): In function `gdImageColorResolve':
gd.o(.text+0x698): multiple definition of `gdImageColorResolve'
modules/php4/libphp4.a(gd.o)(.text+0x148):/usr/home/stevenf/Software/php-4.0.4pl1/ext/gd/gd.c: first defined here
/usr/libexec/elf/ld: Warning: size of symbol `gdImageColorResolve' changed from 218 to 211 in gd.o
*** Error code 1

Stop in /usr/home/stevenf/Software/apache_1.3.19/src.
*** Error code 1

Stop in /usr/home/stevenf/Software/apache_1.3.19.
*** Error code 1

Stop in /usr/home/stevenf/Software/apache_1.3.19.

Others have reported problems in the bug database about the errors that gdImageColorResolve has different symbol sizes, but I've tried the suggested solutions (namely, remove config.cache, and remake PHP), and cannot fix the problem. 

Unfortunatley many bug reports seem to get disowned by those who submit them, with neither a positive or negative response, which dosen't really help the situation. I'm quite keen to get this one fixed though. Solutions greatly appreciated!

-Steven Fletcher
stevenf@shellnet.co.uk

Patches

Add a Patch

Pull Requests

Add a Pull Request

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2001-04-03 15:36 UTC] sniper@php.net
You propably have an old gd.h somewhere in your system
which is found at configure time. Try removing every
instance of GD library (libs and header files) and reinstall
it. Then delete config.cache (PHP4) and reconfigure.
After configure do 'make clean ; make ; make install' and 
also 'make clean' for apache before 'make'.

You should also try the latest CVS snapshot from http://snaps.php.net/

--Jani

 [2001-04-11 09:59 UTC] stevenf at shellnet dot co dot uk
I'll hopefully be testing out your theory sometime today, if not by the end of this week. Just writing this in so that you don't think I've forgotten all about it :-)
 [2001-05-23 06:09 UTC] sniper@php.net
Please try the PHP 4.0.6RC1 from 

http://www.php.net/~andi/php-4.0.6RC1.tar.gz

and reopen this bug report if this still fails.
(and when you are sure there are no remains of old
GD libraries in your system)

--Jani

 
PHP Copyright © 2001-2024 The PHP Group
All rights reserved.
Last updated: Sat Apr 20 04:01:28 2024 UTC