Solved Poudriere: Upgrading PHP56

/usr/ports/UPDATING said:
20150220:
AFFECTS: users of PHP

The default PHP version has been updated from 5.4 to 5.6.
So I do this:
Code:
# pkg install php56
Updating local repository catalogue...
local repository is up-to-date.
All repositories are up-to-date.
Checking integrity... done (0 conflicting)
The following 1 packages will be affected (of 0 checked):

New packages to be INSTALLED:
    php56: 5.6.6

The process will require 15 MiB more space.

Proceed with this action? [y/N]: y
[my.local] [1/1] Installing php56-5.6.6...
[my.local] [1/1] Extracting php56-5.6.6: 100%
Starting php_fpm.
<br />
[b]<PHP Startup: Unable to load dynamic library '/usr/local/lib/php/20131226/xcache.so' -
Cannot open &quot;/usr/local/lib/php/20131226/xcache.so&quot; in <b>Unknown</b> on line <b>0</b><br />[/b]
Now wanting to install www/xcache like this:
Code:
# pkg install xcache
Updating local repository catalogue...
local repository is up-to-date.
All repositories are up-to-date.
Checking integrity... done (1 conflicting)
Checking integrity... done (0 conflicting)
The following 3 packages will be affected (of 0 checked):

Installed packages to be [b]REMOVED[/b]:
    php56-5.6.6

New packages to be [b]INSTALLED[/b]:
    xcache: 3.2.0
    [b]php5: 5.4.38[/b]

The operation will free 26 KiB.

Proceed with this action? [y/N]:
which removes the newly installed PHP version and reinstalls the old one.
Any help for saving lifetime is appreciated.
 
That's odd. On my system I get this as the list for www/xcache dependencies and PHP is version 5.6:
Code:
firewall /usr/ports/www/xcache % make all-depends-list
/usr/ports/ports-mgmt/pkg
/usr/ports/lang/php56
/usr/ports/devel/autoconf
/usr/ports/devel/pcre
/usr/ports/textproc/libxml2
/usr/ports/devel/m4
/usr/ports/misc/help2man
/usr/ports/devel/gmake
/usr/ports/lang/perl5.18
/usr/ports/devel/autoconf-wrapper
/usr/ports/print/indexinfo
/usr/ports/devel/pkgconf
/usr/ports/devel/p5-Locale-gettext
/usr/ports/devel/gmake-lite
/usr/ports/devel/gettext-tools
/usr/ports/devel/gettext-runtime
/usr/ports/textproc/expat2
Which access method are you using for your local packages? If you're using HTTP/FTP try clearing the pkg(8) package cache with # pkg clean -ay.

Double check from your build logs that www/xcache has been rebuilt after the PHP default version change.
 
Looks like it is a Poudriere problem. In my bulk file I had lang/php5 and lang/php56. DEFAULT_VERSIONS in /usr/local/etc/poudriere.d/10_1amd64-make.conf still had php=5.4. After cleaning up the mess (which is my own) I started a new poudriere bulk -j 10_1amd64 -z jails -f bulk_amd64_jails run, but Poudriere refuses to build anything new. As I build for several sets as you can see, I think that I need to clean/remove just this set. But how to do this without destroying all the other builds?
 
Rebuild only the www/xcache port like this (capital C in the -C option, -c would clean everything):

poudriere bulk -j 10_1amd64 -z jails -C www/xcache

Poudriere should pick up the new dependency automatically but apparently it's not doing that for some reason.
 
Back
Top