| Summary: | textproc/php4-simplexml - php 5.2.2 simplexml fails to compile | ||
|---|---|---|---|
| Product: | Ports & Packages | Reporter: | risner <risner> |
| Component: | Individual Port(s) | Assignee: | Alex Dupre <ale> |
| Status: | Closed FIXED | ||
| Severity: | Affects Only Me | ||
| Priority: | Normal | ||
| Version: | Latest | ||
| Hardware: | Any | ||
| OS: | Any | ||
Responsible Changed From-To: freebsd-ports-bugs->ale Over to maintainer State Changed From-To: open->closed Your php installation in screwed up, remove all php ports and reinstall them. |
Have PHP 5.2.1 installed with simplexml, attempt to upgrade to 5.2.2. When making simplexml you get this error: /usr/ports/textproc/php5-simplexml/work/php-5.2.2/ext/simplexml/simplexml.c:38:29: ext/spl/spl_sxe.h: No such file or directory *** Error code 1 Stop in /usr/ports/textproc/php5-simplexml/work/php-5.2.2/ext/simplexml. *** Error code 1 Stop in /usr/ports/textproc/php5-simplexml. mail# Fix: I googled around and didn't find anything on this error, so I quickly fixed it for now. It would appear that spl is referenced by simplexml and that referencing one extension from another breaks some sort of model for the way the PHP5 port worked. It only extracted the extension it was compiling. A proper fix may be to extract all extensions or to just extract this one (spl) along with all others? If I am confused and did something wrong, please excuse me. Thanks. I added a symbolic link and modified /usr/ports/lang/php5/Makefile.ext as follows: mail# pwd /usr/ports/textproc/php5-simplexml mail# ls -l work/php-5.2.2/ext/simplexml/include/ total 0 lrwxr-xr-x 1 root wheel 13 May 26 23:04 ext -> ../../../ext/ mail# grep /ext/spl /usr/ports/lang/php5/Makefile.ext EXTRACT_AFTER_ARGS?= | ${TAR} -xf - ${EXTSUBDIR} ${DISTNAME}/ext/spl cmds: ln -s ../../../ext /usr/ports/textproc/php5-simplexml/work/php-5.2.2/ext/simplexml/include/ cp /usr/ports/lang/php5/Makefile.ext /usr/ports/lang/php5/Makefile.ext.old sed -e 's#\(${TAR} -xf - ${EXTSUBDIR}\)#\1 ${DISTNAME}/ext/spl#' \ < /usr/ports/lang/php5/Makefile.ext.old \ > /usr/ports/lang/php5/Makefile.ext How-To-Repeat: cd /usr/ports/texproc/php5-simplexml; make