Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 13 May 2012 14:34:42 +0200
From:      Jos Chrispijn <jos@webrz.net>
To:        Matthew Seaman <matthew@FreeBSD.org>, freebsd-ports@freebsd.org
Subject:   Re: PHP upgrade through port | SOLVED
Message-ID:  <4FAFAA62.4000205@webrz.net>
In-Reply-To: <4FAF9F5B.4000905@webrz.net>
References:  <4FAF6E5E.9000200@webrz.net> <4FAF84D5.4030709@FreeBSD.org> <4FAF9F5B.4000905@webrz.net>

next in thread | previous in thread | raw e-mail | index | archive | help
Ok, solved; overlooked the /php5-extensions port.

regards,
Jos Chrispijn


Jos Chrispijn:
> Hi Matthew,
>
> Thanks for your reply.
> For some reason that didn't work completely; must be because I am 
> rather a newbie on this.
> Now I removed php5.2 all together from my FreeBSD server (including 
> all related programs).
>
> If I now want to install php 5.3, how do I install the extensions as 
> there is no php53-extensions?
> Or should I use the php52-extensions instead?
>
> regards,
> Jos
>
> Matthew Seaman:
>> On 13/05/2012 09:18, Jos Chrispijn wrote:
>>> Currently I use php52-5.2.17_8 but want to upgrade to php52-5.3.xxx
>>> through the ports.
>>> Can somebody tell me how I can force portupgrade to do so?
>> Basically you should delete any php52 or pecl ports, and anything that
>> depends on them.  Then install the php53 equivalents, reinstall the pecl
>> modules and finally reinstall your php-based applications.
>>
>> As ever, make sure you have good backups before starting this procedure.
>>
>> So:
>>
>>    # pkg_info -IX '^(php5|pecl)'>  /tmp/php-modules
>>    # pkg_delete -rX '^php5' 2>&1>  /tmp/php-deletion-log
>>
>> You might also want to save the output of 'pecl list' (if any) and 'pear
>> list' if pecl and pear are installed on your system.
>>
>> Force the correct base version of php to be installed:
>>
>>    # portmaster lang/php5
>>
>> Reinstall any ported PHP applications, eg phpMyAdmin:
>>
>>    # portmaster databases/phpmyadmin
>>
>> (etc., etc. for all the apps you had installed: check
>> /tmp/php-deletion-log for details.  This should install any necessary
>> dependencies.)
>>
>> Finally, compare what you just installed with the record of what you
>> previously installed to fix up any discrepancies, eg. if you have PHP
>> applications installed from non-ports sources.
>>
>> There isn't an exact one-to-one correspondence between php52-* and
>> php5-* ports (as I recall), since some functions have been moved into
>> the PHP core, or shifted between different modules or moved to pear- or
>> pecl- modules.  However, those are generally the exceptions: if you
>> can't find the exact equivalent php53 module, then (a) try the
>> application without, (b) check the documentation on www.php.net for
>> clues and finally (c) look for equivalent pear- or pecl- modules.  Any
>> PHP application installed from ports should automatically install
>> everything it needs through the ports dependency mechanism.
>>
>> Also, if you use eAccelerator or similar, be sure to reinstall it after
>> upgrading PHP.
>>
>> Note: the lang/php5 port is the correct port for php-5.3.x at the time
>> of writing, but that port is very soon going to switch to providing
>> php-5.4.x, and you would need to switch to lang/php53 if you don't want
>> to go through yet another upgrade.
>>
>> Note 2: beware of the common problem with ordering of extension loadable
>> modules in /usr/local/etc/php/extensions.ini -- some php modules depend
>> on others; unfortunately there's no good way of controlling the order
>> the modules are listed in extensions.ini to account for this.  If php
>> crashes on startup, swapping lines around in that file may well be the
>> solution.  It's been discussed many times on this list and
>> freebsd-questions@..., so check the archives in case of difficulty.
>>
>>     Cheers,
>>
>>     Matthew
>>
>



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4FAFAA62.4000205>