php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #13328 Won't compile with mm-1.1.3
Submitted: 2001-09-16 08:52 UTC Modified: 2001-09-16 21:18 UTC
From: norny at yahoo dot com Assigned:
Status: Not a bug Package: Compile Failure
PHP Version: 4.0CVS-2001-09-16 OS: Linux 2.4.9
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: norny at yahoo dot com
New email:
PHP Version: OS:

 

 [2001-09-16 08:52 UTC] norny at yahoo dot com
I know this bug report sucks because it doesn't have error output, but php 4.0.7RC2 won't compile for me with --with-mm. It compiled with 4.0.6, so I thought this might be new.

I compiled mm 1.1.3 as:
./configure --disable-shared

I tried letting the php configure include the version I had installed with make install in /usr/local/lib and having the source and compiled files linked in /usr/local/src/mm-1.1.3 using ./configure --with-mm=/usr/local/src/mm-1.1.3

Patches

Pull Requests

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2001-09-16 16:15 UTC] sniper@php.net
please ask support questions on the mailing lists:

http://www.php.net/support.php

 [2001-09-16 19:48 UTC] norny at yahoo dot com
I don't think this is bogus.

My mm configuration:
Compiled and installed mm library:
cd mm-1.1.3
./configure --disable-shared
make; make install

Configure mod_ssl:
cd ../mod_ssl.xxxxxxxx
EAPI_MM=../mm-1.1.3 \
./configure \
--with-apache=../apache_1.3.20

Configure and install Apache:
cd ../apache_1.3.20
EAPI_MM=../mm-1.1.3 \
INCLUDES=-I/usr/include/db1 \
LIBS=-ldb1 \
./configure --prefix=/www/apache \
--enable-module=so \
--enable-module=ssl \
--enable-module=rewrite \
--enable-module=info \
--enable-module=auth_db \
--enable-shared=auth_db \
--disable-module=auth_dbm \
--disable-shared=auth_dbm 
make; make certificate TYPE=custom; make install

Configure PHP:
cd ../php-4.0.7RC2
./configure --with-mm --with-apxs=/www/apache/bin/apxs
make

And now new and improved with the error output from the compile:
/usr/local/lib/libmm.a(mm_global.o): In function `MM_create':
mm_global.o(.text+0x0): multiple definition of `MM_create'
Zend/.libs/libZend.al(mm_global.o)(.text+0x0): first defined here
/usr/local/lib/libmm.a(mm_global.o): In function `MM_permission':
mm_global.o(.text+0x34): multiple definition of `MM_permission'
Zend/.libs/libZend.al(mm_global.o)(.text+0x34): first defined here
/usr/local/lib/libmm.a(mm_global.o): In function `MM_destroy':
mm_global.o(.text+0x5c): multiple definition of `MM_destroy'
Zend/.libs/libZend.al(mm_global.o)(.text+0x5c): first defined here
/usr/local/lib/libmm.a(mm_global.o): In function `MM_lock':
mm_global.o(.text+0x80): multiple definition of `MM_lock'
Zend/.libs/libZend.al(mm_global.o)(.text+0x80): first defined here
/usr/local/lib/libmm.a(mm_global.o): In function `MM_unlock':
mm_global.o(.text+0xa4): multiple definition of `MM_unlock'
Zend/.libs/libZend.al(mm_global.o)(.text+0xa4): first defined here
/usr/local/lib/libmm.a(mm_global.o): In function `MM_malloc':
mm_global.o(.text+0xc4): multiple definition of `MM_malloc'
Zend/.libs/libZend.al(mm_global.o)(.text+0xc4): first defined here
/usr/local/lib/libmm.a(mm_global.o): In function `MM_realloc':
mm_global.o(.text+0xe8): multiple definition of `MM_realloc'
Zend/.libs/libZend.al(mm_global.o)(.text+0xe8): first defined here
/usr/local/lib/libmm.a(mm_global.o): In function `MM_free':
mm_global.o(.text+0x10c): multiple definition of `MM_free'
Zend/.libs/libZend.al(mm_global.o)(.text+0x10c): first defined here
/usr/local/lib/libmm.a(mm_global.o): In function `MM_calloc':
mm_global.o(.text+0x12c): multiple definition of `MM_calloc'
Zend/.libs/libZend.al(mm_global.o)(.text+0x12c): first defined here
/usr/local/lib/libmm.a(mm_global.o): In function `MM_strdup':
mm_global.o(.text+0x154): multiple definition of `MM_strdup'
Zend/.libs/libZend.al(mm_global.o)(.text+0x154): first defined here
/usr/local/lib/libmm.a(mm_global.o): In function `MM_sizeof':
mm_global.o(.text+0x178): multiple definition of `MM_sizeof'
Zend/.libs/libZend.al(mm_global.o)(.text+0x178): first defined here
/usr/local/lib/libmm.a(mm_global.o): In function `MM_maxsize':
mm_global.o(.text+0x19c): multiple definition of `MM_maxsize'
Zend/.libs/libZend.al(mm_global.o)(.text+0x19c): first defined here
/usr/local/lib/libmm.a(mm_global.o): In function `MM_available':
mm_global.o(.text+0x1ac): multiple definition of `MM_available'
Zend/.libs/libZend.al(mm_global.o)(.text+0x1ac): first defined here
/usr/local/lib/libmm.a(mm_global.o): In function `MM_error':
mm_global.o(.text+0x1d0): multiple definition of `MM_error'
Zend/.libs/libZend.al(mm_global.o)(.text+0x1d0): first defined here
/usr/local/lib/libmm.a(mm_alloc.o): In function `mm_create':
mm_alloc.o(.text+0x0): multiple definition of `mm_create'
Zend/.libs/libZend.al(mm_alloc.o)(.text+0x0): first defined here
/usr/local/lib/libmm.a(mm_alloc.o): In function `mm_maxsize':
mm_alloc.o(.text+0x64c): multiple definition of `mm_maxsize'
Zend/.libs/libZend.al(mm_alloc.o)(.text+0x64c): first defined here
/usr/local/lib/libmm.a(mm_alloc.o): In function `mm_permission':
mm_alloc.o(.text+0x68): multiple definition of `mm_permission'
Zend/.libs/libZend.al(mm_alloc.o)(.text+0x68): first defined here
/usr/local/lib/libmm.a(mm_alloc.o): In function `mm_destroy':
mm_alloc.o(.text+0x90): multiple definition of `mm_destroy'
Zend/.libs/libZend.al(mm_alloc.o)(.text+0x90): first defined here
/usr/local/lib/libmm.a(mm_alloc.o): In function `mm_lock':
mm_alloc.o(.text+0xbc): multiple definition of `mm_lock'
Zend/.libs/libZend.al(mm_alloc.o)(.text+0xbc): first defined here
/usr/local/lib/libmm.a(mm_alloc.o): In function `mm_unlock':
mm_alloc.o(.text+0xdc): multiple definition of `mm_unlock'
Zend/.libs/libZend.al(mm_alloc.o)(.text+0xdc): first defined here
/usr/local/lib/libmm.a(mm_alloc.o): In function `mm_display_info':
mm_alloc.o(.text+0xf8): multiple definition of `mm_display_info'
Zend/.libs/libZend.al(mm_alloc.o)(.text+0xf8): first defined here
/usr/local/lib/libmm.a(mm_alloc.o): In function `mm_malloc':
mm_alloc.o(.text+0x434): multiple definition of `mm_malloc'
Zend/.libs/libZend.al(mm_alloc.o)(.text+0x434): first defined here
/usr/local/lib/libmm.a(mm_alloc.o): In function `mm_realloc':
mm_alloc.o(.text+0x4e8): multiple definition of `mm_realloc'
Zend/.libs/libZend.al(mm_alloc.o)(.text+0x4e8): first defined here
/usr/local/lib/libmm.a(mm_alloc.o): In function `mm_free':
mm_alloc.o(.text+0x570): multiple definition of `mm_free'
Zend/.libs/libZend.al(mm_alloc.o)(.text+0x570): first defined here
/usr/local/lib/libmm.a(mm_alloc.o): In function `mm_calloc':
mm_alloc.o(.text+0x594): multiple definition of `mm_calloc'
Zend/.libs/libZend.al(mm_alloc.o)(.text+0x594): first defined here
/usr/local/lib/libmm.a(mm_alloc.o): In function `mm_strdup':
mm_alloc.o(.text+0x5dc): multiple definition of `mm_strdup'
Zend/.libs/libZend.al(mm_alloc.o)(.text+0x5dc): first defined here
/usr/local/lib/libmm.a(mm_alloc.o): In function `mm_sizeof':
mm_alloc.o(.text+0x630): multiple definition of `mm_sizeof'
Zend/.libs/libZend.al(mm_alloc.o)(.text+0x630): first defined here
/usr/local/lib/libmm.a(mm_alloc.o): In function `mm_available':
mm_alloc.o(.text+0x65c): multiple definition of `mm_available'
Zend/.libs/libZend.al(mm_alloc.o)(.text+0x65c): first defined here
/usr/local/lib/libmm.a(mm_alloc.o): In function `mm_error':
mm_alloc.o(.text+0x6b0): multiple definition of `mm_error'
Zend/.libs/libZend.al(mm_alloc.o)(.text+0x6b0): first defined here
/usr/local/lib/libmm.a(mm_core.o): In function `mm_core_align2page':
mm_core.o(.text+0xd4): multiple definition of `mm_core_align2page'
Zend/.libs/libZend.al(mm_core.o)(.text+0xd4): first defined here
/usr/local/lib/libmm.a(mm_core.o): In function `mm_core_align2word':
mm_core.o(.text+0x100): multiple definition of `mm_core_align2word'
Zend/.libs/libZend.al(mm_core.o)(.text+0x100): first defined here
/usr/local/lib/libmm.a(mm_core.o): In function `mm_core_maxsegsize':
mm_core.o(.text+0x114): multiple definition of `mm_core_maxsegsize'
Zend/.libs/libZend.al(mm_core.o)(.text+0x114): first defined here
/usr/local/lib/libmm.a(mm_core.o): In function `mm_core_create':
mm_core.o(.text+0x134): multiple definition of `mm_core_create'
Zend/.libs/libZend.al(mm_core.o)(.text+0x134): first defined here
/usr/local/lib/libmm.a(mm_core.o): In function `mm_core_permission':
mm_core.o(.text+0x39c): multiple definition of `mm_core_permission'
Zend/.libs/libZend.al(mm_core.o)(.text+0x39c): first defined here
/usr/local/lib/libmm.a(mm_core.o): In function `mm_core_delete':
mm_core.o(.text+0x3f8): multiple definition of `mm_core_delete'
Zend/.libs/libZend.al(mm_core.o)(.text+0x3f8): first defined here
/usr/local/lib/libmm.a(mm_core.o): In function `mm_core_size':
mm_core.o(.text+0x47c): multiple definition of `mm_core_size'
Zend/.libs/libZend.al(mm_core.o)(.text+0x47c): first defined here
/usr/local/lib/libmm.a(mm_core.o): In function `mm_core_lock':
mm_core.o(.text+0x494): multiple definition of `mm_core_lock'
Zend/.libs/libZend.al(mm_core.o)(.text+0x494): first defined here
/usr/local/lib/libmm.a(mm_core.o): In function `mm_core_unlock':
mm_core.o(.text+0x520): multiple definition of `mm_core_unlock'
Zend/.libs/libZend.al(mm_core.o)(.text+0x520): first defined here
/usr/local/lib/libmm.a(mm_lib.o): In function `mm_lib_error_set':
mm_lib.o(.text+0x0): multiple definition of `mm_lib_error_set'
Zend/.libs/libZend.al(mm_lib.o)(.text+0x0): first defined here
/usr/local/lib/libmm.a(mm_lib.o): In function `mm_lib_error_get':
mm_lib.o(.text+0x158): multiple definition of `mm_lib_error_get'
Zend/.libs/libZend.al(mm_lib.o)(.text+0x158): first defined here
/usr/local/lib/libmm.a(mm_lib.o): In function `mm_lib_version':
mm_lib.o(.text+0x174): multiple definition of `mm_lib_version'
Zend/.libs/libZend.al(mm_lib.o)(.text+0x174): first defined here
/usr/local/lib/libmm.a(mm_vers.o)(.data+0x0): multiple definition of `mm_version                                                                                                                               
'
Zend/.libs/libZend.al(mm_vers.o)(.data+0x0): first defined here
collect2: ld returned 1 exit status
make[1]: *** [libphp4.la] Error 1
make[1]: Leaving directory `/root/sources/php-4.0.7RC2'
make: *** [all-recursive] Error 1
 [2001-09-16 20:30 UTC] sniper@php.net
It was marked as bogus since you were doing it wrong
and thus asking support question here. And because I can't
reproduce this. :)

Have you tried with fresh sources? ie. get net tarball,
extract it and do './configure --with-mm --with-apxs...'

Also, it seems more like a problem in the compilation
of MM itself. Why do you disable the shared build for it?

--Jani

 [2001-09-16 21:18 UTC] norny at yahoo dot com
I compiled mm with --disable-shared at the suggestion of the mod_ssl INSTALL doc.

"Do not forget the --disable-shared option above. Else you've to establish an explicit LD_LIBRARY_PATH which include the /path/to/mm-1.1.x/.libs directory or the compilation of Apache will fail because the shared library cannot be found."

I recompiled mm with just ./configure and no --disable-shared option and the PHP compile didn't fail.

I assume anyone else that follows the instructions I listed in this report will have the same problem. I don't know if that changes the bug status or not.
 
PHP Copyright © 2001-2025 The PHP Group
All rights reserved.
Last updated: Wed May 07 10:01:28 2025 UTC