Since the new php layout in the ports (July 23 2004), the xslt extension for php4 does not work correctly. On a FreeBSD 5.2.1-p8 machine (also reproduced on 4.10-release and 5.2-CURRENT) I installed apache2 and php4 from the ports. Then I installed the /usr/ports/textproc/php4-xslt port. I verified my php.ini that the extension is loaded (extension=xslt.so) and that the extension-path is included (extension_dir = "/usr/local/lib/php/20020429"). In a php file I use the xslt_set_encoding() function. When I connect to this file the following error appears: Fatal error: Call to undefined function: xslt_set_encoding() in /usr/local/www/data-dist/test.php on line 3 Before July 23 2004, when php4 (and its extensions) had to be installed differently from the ports, there was no problem. How-To-Repeat: - cvsup the ports-tree after July 23 2004 (the new php4 port layout) - Install the /usr/ports/www/apache2 port with 'make install clean' - Install the /usr/ports/lang/php4 port with 'make install clean' - Install the /usr/ports/textproc/php4-xslt port with 'make install clean' - Create a test.php file with the following content: <?php $ht=xslt_create(); xslt_set_encoding($ht,"ISO-8859-2"); $args = array ( '/_xml' => $xml, '/_xslt' => $xslt); $result=xslt_process($ht,'arg:/_xml','arg:/_xslt',NULL,$args); ?> - Place the test.php file in the root of the web-tree and connect with a webbrowser to http://[machinename]/test.php - See that PHP says that the xslt_set_encoding() does not exist.
Responsible Changed From-To: freebsd-ports-bugs->ale Over to maintainer.
State Changed From-To: open->closed Fixed, rebuild the php4-xslt port.