php5-filter (missing header) issue resolved…

On a recent portupgrade I received some dreaded ***stop error***’s regarding php5-filter and php5-zip ports. The output was as follows:

“Skipping ‘lang/php5-extensions’ (php5-extensions-1.3) because a requisite package ‘php5-zip-5.2.12’ (archivers/php5-zip)
failed (specify -k to force)
** Listing the failed packages (-:ignored / *:skipped / !:failed)
– devel/automake110 (port directory error)
– devel/automake19 (port directory error)
! devel/autoconf (autoconf-2.62) (install error)
* devel/autoconf (autoconf-2.67)
* lang/php5 (php5-pcre-5.2.12)
* lang/php5 (php5-spl-5.2.12)
! security/php5-filter (php5-filter-5.2.12) (missing header)
! archivers/php5-zip (php5-zip-5.2.12) (missing header)
* lang/php5-extensions (php5-extensions-1.3)”

At first, I needed to resolve the autoconf issue and a pkg_info *auto yeilded some interesting information-four different versions of each with separate wrappers. Apparently devel/autotools has had some ongoing cleanup taking place, which AHEM (yes, I make bonehead sysadmin mistakes too ;-), I failed to catch while reading the /usr/ports/UPDATING file prior to running portugrade…

Specfically, the UPDATING file reads:

“IMPORTANT: if you have either devel/autoconf-wrapper or
  devel/automake-wrapper installed on your system (and you most likely do)
  PLEASE update these ports to their new versions before updating anything
  else — Bad Things[tm] are likely to happen otherwise.”

So off to Google I went in an effort to resolve the issue. Well, not much help there so based on my past experience, I know autoconf/automake are required packages on many other ports. I uninstalled the autoconf and automake ports and will let package dependencies resolve the issue on future upgrades.

After dealing with autoconf/automake, it was on to the php5 errors. Noticing that the errors originally had to do with pcre, and after checking the /usr/ports/MOVED file I noticed this little entry on php5-filter:

“security/pecl-filter|security/php5-filter|2008-12-11|Now bundled in php5”.

Hmmm, maybe I am on to something here. I noticed also that pecl-filter was its own package previously (pkg_info) and listed as such.

To finally resolve the pcre and pecl-filter issue, and to get to the point of fixing the php5 issue, I did the following:

  1. pkg_delete -f pecl-fileinfo-1.0.4
  2. pkg_delete -f php5*
  3. accordingly I added WITH_BUNDLED_PCRE=”YES” in my make.conf file (http://forums.freebsd.org/showthread.php?t=13191)
  4. cd /usr/local/
  5. rm /etc/php.*
  6. rm -r lib/php/
  7. rm -r /include/php/
  8. cd /usr/ports/lang/php5/
  9. make rmconfig
  10. make install clean, selecting options I needed for re-install of php5
  11. cd ../php5-extensions/
  12. make install clean
  13. and finally, pkgdb -Fu to remove any outstanding port dependencies (which no fix was necessary)

No further errors were thrown and our production blog server is back to being  very happy 😉

Leave a Reply

Your email address will not be published. Required fields are marked *