ID:               45740
 User updated by:  Bjorn dot Wiberg at its dot uu dot se
 Reported By:      Bjorn dot Wiberg at its dot uu dot se
 Status:           Assigned
 Bug Type:         Compile Failure
 Operating System: IBM AIX 5.3 5300-08-01-0819
 PHP Version:      5.3CVS-2008-08-07 (snap)
 Assigned To:      derick
 New Comment:

The old mime_magic extension has, to my knowledge, never required nor
used libmagic. We "converted" to Fileinfo and libmagic about half a year
ago. Prior to that, we only used mime_magic. I plan on removing the
mime_magic flag after alpha2 is released (as, if I interpret the road
map correctly, some "last" function needed to cover up for mime_magic
will be available then).

Regarding the bundled libmagic, my (sidenote) question was whether the
bundled one was another libmagic library than the one I pointed out (in
case there are several implementations with a similar name). I know that
my "separate" libmagic won't be used and that it has nothing (else) to
do with the bundled one.

The bug report is only about asprintf and vasprintf. There are some
HAVE_ASPRINTF defines (something like that) in the bundled source and I
guess that something is wrong there, i.e., that those are set without
asprintf or vasprintf being available. Or that some configure check has
detected that those are available but that the bundled libmagic does not
include all needed headers and does not link with the C library as the
man pages for asprintf/vasprintf indicate.

On the other hand, those man pages also say that those functions are a
GNU feature, so that they might not be available on all platforms. Which
is why the HAVE_ASPRINTF stuff appears important...

I'm thankful for you looking into this. We're close to the goal now,
i.e. successful compilation, even though I know that AIX may sound
obscure to some. ;-)

Best regards,
Björn


Previous Comments:
------------------------------------------------------------------------

[2008-08-07 22:09:46] [EMAIL PROTECTED]

Of course since you have also enabled the old deprecated mime magic
extension, it will cause linking with the external libmagic too..

------------------------------------------------------------------------

[2008-08-07 22:07:49] [EMAIL PROTECTED]

FYI: We have a bundled libmagic. Whatever you have in your system has
nothing to with this.

------------------------------------------------------------------------

[2008-08-07 13:38:21] Bjorn dot Wiberg at its dot uu dot se

A small sidenote: I'm not sure which libmagic PHP is using; the
libmagic I have tried separately (on AIX) is the one from
ftp://ftp.astron.com/pub/file/ ("The file(1) command and libmagic(3)
library"), and I don't recall encountering anything like this with that
one.

------------------------------------------------------------------------

[2008-08-07 07:15:34] Bjorn dot Wiberg at its dot uu dot se

Description:
------------
Linking failure referring to undefined symbols ".vasprintf" and
".asprintf".

Looking in ext/fileinfo/libmagic indicates that those functions are
used in funcs.c and softmagic.c.

Googling indicates that asprintf() and vasprintf() require stdio.h and
linking against the C library (-lc).

Reproduce code:
---------------
#! /bin/sh
#
# Created by configure

LDFLAGS='-Wl,-bbigtoc' \
CC='gcc' \
'./configure' \
'--enable-bcmath' \
'--enable-calendar' \
'--enable-cli' \
'--enable-dba' \
'--enable-dbase' \
'--enable-debug' \
'--enable-exif' \
'--enable-flatfile' \
'--enable-ftp' \
'--enable-gd-jis-conv' \
'--enable-gd-native-ttf' \
'--enable-inifile' \
'--enable-mbstring' \
'--enable-pcntl' \
'--enable-shmop' \
'--enable-soap' \
'--enable-sockets' \
'--enable-sqlite-utf8' \
'--enable-sysvmsg' \
'--enable-sysvsem' \
'--enable-sysvshm' \
'--enable-wddx' \
'--enable-zip' \
'--enable-zend-multibyte' \
'--prefix=/apache/php' \
'--with-apxs2=/apache/bin/apxs' \
'--with-bz2' \
'--with-cdb' \
'--with-curl' \
'--with-freetype-dir' \
'--with-gd' \
'--with-gdbm' \
'--with-gettext' \
'--with-jpeg-dir' \
'--with-ldap' \
'--with-libxml-dir=/usr/local' \
'--with-mime-magic' \
'--with-mysql=mysqlnd' \
'--with-mysqli=mysqlnd' \
'--with-openssl=/opt/freeware' \
'--with-pdo-mysql=mysqlnd' \
'--with-png-dir' \
'--with-xmlrpc' \
'--with-xpm-dir' \
'--with-xsl' \
'--with-zlib' \
'--with-zlib-dir' \
"$@"

(GNU) make

Expected result:
----------------
Successful compilation/linking.

Actual result:
--------------
---8<--- excerpt ---8<---
2/usr/lib
-L/gestconf/project/GNOME_ACL/GNOME/build/M_acc_gnome2_12_0f1/export/power_510_32/usr/lib
-L/gestconf/project/GNOME_ACL/GNOME/build/acc_gnome2_12_0f1/export/power_510_32/usr/lib
-L/gestconf/project/GNOME_ACL/GNOME/build/GNOME_2_12_0/export/power_510_32/usr/lib
-lz -lX11 -lXpm -lpng
-L/gestconf/project/GNOME_ACL/GNOME/build/BLD_M_gnome2_14f1/export/power_510_32/usr/lib
-L/gestconf/project/GNOME_ACL/GNOME/build/M_acc_gnome2_14_0f1/export/power_510_32/usr/lib
-L/gestconf/project/GNOME_ACL/GNOME/build/acc_gnome2_14_0f1/export/power_510_32/usr/lib
-L/gestconf/project/GNOME_ACL/GNOME/build/GNOME_2_14_0/export/power_510_32/usr/lib
-L/users/project/PDP/PDP_51_vac_6_14/usr/ccs/lib
-L/users/project/PDP/PDP_51_vac_6_14/usr/lib -lz -lm -lz -ljpeg -lssl
-lcrypto -lgdbm -lbz2 -lz -lssl -lcrypto -lm -lz -liconv -lm -lcurl
-lssl -lcrypto -lz -lssl -lcrypto -lz -lz -liconv -lm -lz -liconv -lm
-lz -liconv -lm -lz -liconv -lm -lz -liconv -lm -lz -liconv -lm -lz
-liconv -lm -lz -liconv -lm -lxslt -lz -liconv -lm -lxml2 -lpthread -lz
-liconv -lm -lz -liconv -lm
-Wl,-blibpath:/usr/local/lib:/opt/freeware/lib:/usr/X11R6/lib:/opt/freeware/lib/gcc/powerpc-ibm-aix5.3.0.0/4.0.0:/opt/freeware/lib/gcc/powerpc-ibm-aix5.3.0.0/4.0.0/../../..:/usr/lib:/lib

ld: 0711-224 WARNING: Duplicate symbol: php_optidx
ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more
information.
ld: 0711-317 ERROR: Undefined symbol: .vasprintf
ld: 0711-317 ERROR: Undefined symbol: .asprintf
collect2: ld returned 8 exit status
make: *** [sapi/cli/php] Error 1
Bad exit status from /var/opt/freeware/tmp/rpm-tmp.2294 (%build)
-->8--- end excerpt --->8---


------------------------------------------------------------------------


-- 
Edit this bug report at http://bugs.php.net/?id=45740&edit=1

Reply via email to