PHP 4.0 Bug #6975 Updated: link fails with pcre_memmove multiply defined
| From: | sniper@php.net | Date: | Tue, 30 Jan 2001 08:51:15 +0000 |
| Subject: | PHP 4.0 Bug #6975 Updated: link fails with pcre_memmove multiply defined | ||
| Groups: | php.dev | ||
| Request: | Send a blank email to php-dev+get-45316@lists.php.net to get a copy of this message | ||
ID: 6975
Updated by: sniper
Reported By: enno.davids@metva.com.au
Old-Status: Feedback
Status: Closed
Bug Type: Compile Failure
Assigned To:
Comments:
No feedback. If problem still exists with PHP 4.0.4pl1
reopen this bug report.
--Jani
Previous Comments:
---------------------------------------------------------------------------
[2000-12-18 10:37:47] sniper@php.net
Does this happen also with the latest snapshot from http://snaps.php.net/ ??
--Jani
---------------------------------------------------------------------------
[2000-10-02 08:57:55] enno.davids@metva.com.au
When doing a DSO build on a SunDS4 machine the (I think) final link fails with pcre_memmove multiply
defined.
On investigation, it seems that the configure script is not setting the necessary defines for this
platform in .../ext/pcre/pcrelib/. The header file internal.h in that directory specifically tests
for platforms like this which may not have memmove but do have bcopy. But in the case where neither
are found, it has a code snippet for pcre_memmove which it includes. As soon as more than one .c
file includes this, the code snippet is expanded into each file, resulting in the multiple
definitions the linker complains about.
As the config mechanisms are sufficiently complex I haven't attempted to fix them and supply a
patch and this may in fact be a problem with what appears to be an externally sourced library in any
event. The fix for SunOS is to add a pair of #defines to explicity set HAVE_MEMMOVE to false and
HAVE_BCOPY to true. The compile/link suceeds at that point.
---------------------------------------------------------------------------
Full Bug description available at: http://bugs.php.net/?id=6975