[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [cobalt-developers] Updating PHP on RaQ 550
- Subject: Re: [cobalt-developers] Updating PHP on RaQ 550
- From: Michael Stauber <devel@xxxxxxxxxxxxxx>
- Date: Wed Sep 24 16:41:00 2003
- Organization: SOLARSPEED.NET
- List-id: Discussion Forum for developers on Sun Cobalt Networks products <cobalt-developers.list.cobalt.com>
Hi Bruce,
> The usage graphs on the 550 don't do that anymore, do they? Regardless, the
> Unisys GIF patent has expired -- at least in the US -- and anyone can do
> what they wish now...
Yeah. But most use gd-lib to create images from within PHP. Since PHP-4.3.X it
also comes with a bundled gd-2.0.X, so you don't have to use the gd-lib
already installed on the system, which is great for better portability.
Unfortunately GIF support was dropped from gd-lib due to the (now expired)
Unisys patent. It is not clear if GIF support will be added to gd again.
There is a "hacked" version of gd-1.8.4 which supports both PNG and GIF. It's
not endorsed by Mr. Boutell, the creator and maintainer of gd. PKGmaster.com
uses this gd-lib in their PHP-4.1.2.
> The few times I tried rebuilding PHP, I always got an "i18n not found"
> error or something... those who are building more PHP binaries can
> probably add comments...
I remember a few comments from Sun Cobalt officials when users inquired why
Sun never brought out an updated PHP for the RaQs. The usual reply mumbled
something about "fundamental API changes in PHP between 4.0.6 and newer
versions". I always though "Bollocks!" when I saw that.
I looked at the issue a few times. Last time around when the Qube3 was open
sourced. I then grabbed the Qube 3 sources and also went through ...
ftp://ftp.cobalt.com/pub/products/qube3/ml/updates/SRPMS/php-4.0.6-C5_Qube3.src.rpm
... and earlier PHP SRPMs with a fine toothed comb. The SRPMs should basically
contain everything which makes the PHP4 on a Qube3 so special, right?
Well, when you grep the contends of the SRPM for the term "i18n" the only
reference is in php-4.0.6/ext/mbstring. Apparently i18n in there refers to
this stuff:
==========================================
README for I18N Package
==========================================
[snip]
o What is this package?
This package allows you to handle multiple Japanese encodings (SJIS, EUC,
UTF-8, JIS) in PHP. If you find any bugs in this package, please report
them to the appropriate mailing list. For now, the PHP-jp mailing list
is the best place for this.
[snip]
-----------------------------------------------------------------------------------------
Why does the phrase "Move along, these aren't the droids you are looking for
..." come to mind? ;o)
At first glimpse it does not look as if this is the stuff we're looking for as
it just deals with mbstring encoding and multibyte character support for
Japanese. However, the RaQ550 and Qube3 are multi-langual, so this indeed
makes sense.
A broken GUI interface after a self attempted PHP upgrade usually complains
like this:
-----------------------------------------------------------------------------------------
Fatal error: Call to undefined function: i18n_new() in
/usr/sausalito/ui/libPhp/I18n.php on line 47
-----------------------------------------------------------------------------------------
The relevant function generating that error in
/usr/sausalito/ui/libPhp/I18n.php looks like this:
-----------------------------------------------------------------------------------------
// description: constructor
// param: domain: a string that describes the domain
// param: langs: an optional string that contains a comma
// separated list of preferred locale. Most important locales
// appears first.
// e.g. "en_US, en_AU, zh, de_DE"
function I18n($domain = "", $langs = "")
{
if($GLOBALS["_I18n_isDebug"]) print("I18n($domain,
$langs)\n");
if($GLOBALS["_I18n_isStub"]) return;
if($langs == "" && getenv("LANG") == "") {
$langs = "en";
}
$this->handle = i18n_new($domain, $langs); // <-- Line 47
}
-----------------------------------------------------------------------------------------