php5.0.3_1 doesn't run after update

Jon Noack noackjr at alumni.rice.edu
Mon Dec 20 14:31:11 PST 2004


On 12/20/04 15:45, bob wrote:
> Jon Noack wrote:
>> bob wrote:
>>> I am running 4.10 stable.
>>>
>>> I upgraded to php5.0.3_1 by:
>>>
>>> cvsup
>>> portsdb -Uu
>>> pkgdb -vuf
>>> portupgrade -v php5-session
>>> portupgrade -v php5-mysql
>>> ...
>>> portupgrade -v php5
>>>
>>> PHP Warning: PHP Startup: Unable to load dynamic library
>>> /usr/local/lib/php/20041030/session.so
>>>
>>> I get the same messages for the 12 modules that I updated.
>>>
>>> In /usr/local/lib/php I have:
>>>
>>> drwxr-xr-x  2 root  wheel  1536 Dec 20 13:58 20040412
>>> drwxr-xr-x  2 root  wheel   512 Dec 20 14:00 build
>>> drwxr-xr-x  3 root  wheel   512 Sep 15 10:31 pear
>>>
>>> Now much of php doesn't work. How do you fix this?
>>>
>>> What did I do wrong to cause this to happen?
>>
>> Rebuild all of your extensions ("portupgrade -f <port>"). The most 
>> recent update of the php5 port changed the extension directory.
>> This probably deserves an entry in UPDATING.
>> 
>> Also, any reason you don't use "portupgrade -a"?
>
> I didn't want to update some things that I no longer use (thunderbird, 
> eg). I've started running a web server on this machine and I don't care 
> about x-windows things now. I'm not sure if my thinking is correct on 
> this. It seemed a little less risky.

Everything on the machine should be kept up-to-date.  If you don't plan 
on using using it, you should pkg_deinstall it ("less is more" when it 
comes to security).  Just leaving old versions sitting around is a 
security nightmare.

Plus, running "portupgrade -a" is so much easier...

> Should I run "portupgrade -f php5" before or after php5-extensions 
> and/or php5-session, etc? Here's what portversion -v says:
> 
> ...

Answered in another response by Matthew Fuller.

> If it's just a problem with the extensions directory, can I change the 
> pointer to point to the right directory? Do you know where that is?

The pointer is specified in /usr/local/etc/php.ini.  Setting 
"extension_dir" to "/usr/local/lib/php/20040412/" should make php find 
the extensions again, but no guarantees on whether it will work -- there 
had to be a reason to bump the date.  In any case, rebuilding your 
extensions is the long-term solution.

Jon


More information about the freebsd-stable mailing list