#30781 [Bgs]: xsl: undefined reference to `php_dom_create_object'
| From: | tony2001@php.net | Date: | Sun, 14 Nov 2004 20:20:26 +0000 |
| Subject: | #30781 [Bgs]: xsl: undefined reference to `php_dom_create_object' | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-69051@lists.php.net to get a copy of this message | ||
ID: 30781
Updated by: tony2001@php.net
Reported By: elkner at linofee dot org
Status: Bogus
Bug Type: Compile Failure
Operating System: Linux
PHP Version: 5.0.2
New Comment:
You can't build both dom & xsl extensions as shared, 'cause xsl
extension requires dom to be built statically.
Previous Comments:
------------------------------------------------------------------------
[2004-11-14 19:53:30] elkner at linofee dot org
Ahhh - now I know, what you mean. So you didn't actually have a look
at the description, have you ?
If so, you would probably recongize, that the php build system tries
to link the xsl extension, but it requires stuff, which belongs to the
dom extension. The dom extension is already build and usable,
so in principal no problem. However, the xsl stuff probably assumes,
that the dom stuff is always statically linked into the php module and
thus fails, since the dom stuff is obviously in a separate library aka
dom.so ...
BTW: This is not a patched version from somewhere - this is the version
I downloaded via http://www.php.net/downloads.php.
The configure
snipplet I use has been evolved since 4.0.x times. I always use this
kind of script to ensure, that each update to a new release supports
the same features, as the previous one. So just a thing to keep the php
stuff running - even after upgrades ...
------------------------------------------------------------------------
[2004-11-14 19:24:48] derick@php.net
I am saying that this is not a support question, but rather a user
error. YOu've plenty of weird stuff in your configure line... so you
probably have a patched version from some distribution.
------------------------------------------------------------------------
[2004-11-14 19:19:00] elkner at linofee dot org
Ehmm, sory for my confusion. But I thought, the package is php
and if there are any problems compiling it, it is important for the php
team to fix it. I did not know, that the ext/* stuff comming with php
is not supported by the php team :(.
BTW: Thanx for the --enable-xml=shared=shared hint , but as you
probably know, this is not causing the error ...
------------------------------------------------------------------------
[2004-11-14 16:50:38] derick@php.net
Sorry, but your problem does not imply a bug in PHP itself. For a
list of more appropriate places to ask for help using PHP, please
visit http://www.php.net/support.php as this bug system
is not the
appropriate forum for asking support questions.
Thank you for your interest in PHP.
Your configure line is wrong:
--enable-xml=shared=shared \\
------------------------------------------------------------------------
[2004-11-14 15:59:33] elkner at linofee dot org
Description:
------------
Can't compile php 5.0.2 with xsl support:
...
ext/xsl/.libs/xsltprocessor.o(.text+0x94f): In function
`xsl_ext_function_php':
/export/scratch/build/php-5.0.2/ext/xsl/xsltprocessor.c:204: undefined
reference to `php_dom_object_get_data'
ext/xsl/.libs/xsltprocessor.o(.text+0xb2b):/export/scratch/build/php-5.0.2/ext/xsl/xsltprocessor.c:229:
undefined reference to `php_dom_create_object'
ext/xsl/.libs/xsltprocessor.o(.text+0xfd9):/export/scratch/build/php-5.0.2/ext/xsl/xsltprocessor.c:291:
undefined reference to `dom_object_get_node'
ext/xsl/.libs/xsltprocessor.o(.text+0x194b): In function
`zif_xsl_xsltprocessor_transform_to_doc':
/export/scratch/build/php-5.0.2/ext/xsl/xsltprocessor.c:495: undefined
reference to `php_dom_create_object'
collect2: ld returned 1 exit status
make: *** [sapi/cli/php] Error 1
...
Reproduce code:
---------------
./configure \
--prefix=${PROTO}/opt/php \
--disable-static \
--enable-shared \
\
--enable-cli \
--disable-cgi \
--enable-discard-path \
--enable-path-info-check \
\
--enable-debug \
--enable-safe-mode \
--enable-magic-quotes \
--disable-rpath \
--enable-short-tags \
--disable-ipv6 \
--enable-versioning \
\
--enable-libxml=shared \
--enable-bcmath=shared \
--enable-calendar=shared \
--enable-ctype=shared \
--enable-dba=shared \
--enable-dbase=shared \
--enable-dbx=shared \
--enable-dio=shared \
--enable-dom=shared \
--enable-exif=shared \
--enable-filepro=shared \
--enable-ftp=shared \
--enable-gd-native-ttf=shared \
--enable-gd-jis-conv=shared \
--enable-mbstring=shared \
--enable-mbregex=shared \
--enable-embedded-mysqli \
--enable-posix=shared \
--enable-session=shared \
--enable-shmop=shared \
--enable-soap=shared \
--enable-sockets=shared \
--enable-sysvmsg \
--enable-sysvsem \
--enable-sysvshm \
--enable-tokenizer=shared \
--disable-wddx \
--enable-xml=shared=shared \
\
--enable-inline-optimization \
--enable-memory-limit \
--enable-zend-multibyte \
\
--with-apxs2=${ROOT4BUILD}/opt/www/bin/apxs \
--with-config-file-path=/etc \
--with-exec-dir \
--with-libxml-dir=${ROOT4BUILD}/usr/lib --enable-shared=xml \
--with-openssl=${ROOT4BUILD}/usr --enable-shared=openssl \
--with-zlib=${ROOT4BUILD}/usr --enable-shared=zlib \
--with-bz2=${ROOT4BUILD}/usr --enable-shared=bz2 \
--without-cpdflib \
--with-jpeg-dir=${ROOT4BUILD}/usr --enable-shared=jpeg \
--with-tiff-dir=${ROOT4BUILD}/usr --enable-shared=tiff \
--without-curl \
--without-curl-wrappers \
--without-qdbm \
--with-gdbm=${ROOT4BUILD}/usr --enable-shared=gdbm \
--with-db3=${ROOT4BUILD}/usr --enable-shared=db3 \
--with-inifile=shared \
--with-flatfile=shared \
--with-fam=shared \
--with-gd=shared \
--with-png-dir=${ROOT4BUILD}/usr --enable-shared=png \
--with-xpm-dir=${ROOT4BUILD}/usr --enable-shared=xpm \
--without-ttf \
--with-freetype-dir=${ROOT4BUILD}/usr \
--with-t1lib=${ROOT4BUILD}/usr --enable-shared=t1lib \
--with-gettext \
--without-gmp \
--with-iconv \
--without-imap \
--disable-mime-magic \
--with-mysql=shared,${ROOT4BUILD}/usr --enable-shared=mysql \
--with-mysql-sock=/var/run/mysql.sock \
--with-ncurses=shared,${ROOT4BUILD}/usr --enable-shared=ncurses
\
--with-pcre-regex=${ROOT4BUILD}/usr --enable-shared=pcre-regex
\
--without-sqlite \
--without-readline \
--with-xsl=${ROOT4BUILD}/usr --enable-shared=xsl \
Expected result:
----------------
php should be able to recognize dependencies to other modules
and resolve them properly
Actual result:
--------------
none
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/?id=30781&edit=1