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
 [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

Add a Patch

Pull Requests

Add a Pull Request

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-2024 The PHP Group
All rights reserved.
Last updated: Wed May 01 19:01:31 2024 UTC