php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #2480 _memmove not found (and fixed)
Submitted: 1999-10-10 15:43 UTC Modified: 1999-10-24 12:37 UTC
From: bob at bizweb dot com Assigned:
Status: Closed Package: Compile Failure
PHP Version: 3.0.12 OS: SunOS 4.1.4
Private report: No CVE-ID: None
Welcome back! If you're the original bug submitter, here's where you can edit the bug or add additional notes.
If you forgot your password, you can retrieve your password here.
Password:
Status:
Package:
Bug Type:
Summary:
From: bob at bizweb dot com
New email:
PHP Version: OS:

 

 [1999-10-10 15:43 UTC] bob at bizweb dot com
Making Apache 1.3.9 results in the link time error "_memmove not found".  SunOS 4.1.x, of course, doesn't have "memmove" but needs "bcopy" instead.  The memmove was found in the "pcrelib/pcre.o" object file.  It looks like the way the PCRE stuff handles the memmove problem with SunOS is that it has some conditional code in "pcrelib/internal.h".  Here is a snippet of code from "pcrelib/internal.h":

/* To cope with SunOS4 and other systems that lack memmove() but have bcopy(),
define a macro for memmove() if USE_BCOPY is defined. */

#ifdef USE_BCOPY
#undef  memmove        /* some systems may have a macro */
#define memmove(a, b, c) bcopy(b, a, c)
#endif

It looks like USE_BCOPY never gets defined.  I fixed this in my case by sticking in a "#define USE_BCOPY" right before the #ifdef.  After that it compiled up just fine.  So it looks like you need to get USE_BCOPY to propigate down into "pcrelib/Makefile" under the appropriate situation.

Patches

Pull Requests

History

AllCommentsChangesGit/SVN commitsRelated reports
 [1999-10-24 12:37 UTC] sas at cvs dot php dot net
Thanks for the report, it's fixed in CVS.
 
PHP Copyright © 2001-2025 The PHP Group
All rights reserved.
Last updated: Tue Jul 01 17:01:34 2025 UTC