MacOSX 10.5(Leopard)のportをupdateした

とあるソフトを入れたらPHPのバージョンが古いと怒られたので
軽い気持ちでportを使ってソフトをupdateしたら、大変なことになった。
まだ解決していない

port自体のupdateを行う

mac-mini$ sudo port selfupdate
Password:

MacPorts base version 1.600 installed

Downloaded MacPorts base version 1.800
Configuring, Building and Installing new MacPorts base
selfupdate done!

updateされたソフトを調べる

mac-mini$ port outdated
The following installed ports are outdated:
apache2                        2.2.8_0 < 2.2.14_0
apr                            1.2.12_1 < 1.3.9_0
apr-util                       1.2.12_0 < 1.3.9_0
bzip2                          1.0.5_0 < 1.0.5_3
curl                           7.18.1_0 < 7.19.7_0
freetype                       2.3.5_1 < 2.3.9_1
gawk                           3.1.6_0 < 3.1.7_0
gettext                        0.17_3 < 0.17_4
jpeg                           6b_2 < 6b_3
libiconv                       1.12_0 < 1.13_0
libmcrypt                      2.5.8_0 < 2.5.8_1
libpng                         1.2.26_0 < 1.2.40_0
libtool                        1.5.26_0 < 2.2.6a_0
libxml2                        2.6.31_0 < 2.7.6_0
libxslt                        1.1.22_0 < 1.1.26_0
mhash                          0.9.9_0 < 0.9.9.9_0
mysql5                         5.0.51a_0 < 5.1.40_0
ncurses                        5.6_0 < 5.7_0
ncursesw                       5.6_1 < 5.7_0
nkf                            2.0.8b_0 < 2.0.9-20090426_0
openssl                        0.9.8g_0 < 0.9.8l_0
pcre                           7.6_0 < 7.9_0
php5                           5.2.6_0 < 5.3.0_3
pkgconfig                      0.23_0 < 0.23_1
readline                       5.2.007_0 < 6.0.000_2
sqlite3                        3.5.7_0 < 3.6.20_0
tiff                           3.8.2_1 < 3.9.2_0
wget                           1.11.2_0 < 1.12_0
zlib                           1.2.3_1 < 1.2.3_3

updateをする

とりあえず、全部updateしときました。個別にやる場合は、installedの部分にパッケージ名を指定する。

mac-mini$ sudo port upgrade installed

なんか出た

Xcode3.0じゃダメだから3.1を入れないとtiffはupdateさせないぜだって。

On Mac OS X 10.5, tiff 3.9.2 requires Xcode 3.1 or later but you have Xcode 3.0.
Error: Target org.macports.extract returned: incompatible Xcode version
Error: Unable to upgrade port: 1

tiffは別にいいんだけど、、、そのうちめんどくさい事になりそうなので、入れるか。

Xcodeのバージョンアップ…は断念

Apple Developer Connection - Developer Tools and Technologies - Developer Tools
でなんかレジストしてからダウンロードした。もの凄い重い。
MacSynergyで繋いでるので、マウスの動きに支障が出たので、暫く待って、DL完了してから処理しようとしたら、
MacOSXのバージョンが古いからダメって怒られた。

放置しとこう。

PHP5.3は早すぎた。

うわーダメだfreshreaderが使ってるioncube loader(PHP暗号化用のローダー)がPHP5.3に対応してなかった。
しかもportでactivateコマンドで古いphp5を設定しても、前のが残ってないらしく使えない。もうダメポ
portでphp52を指定すると5.2.XのPHPが使える様だが、portが新しくなってしまったせいで、tiffを新しくしようとするので
Xcod3.1以降が無いとだめ、Xcodeは今MacOSX 10.6(Snow Leopard)用のものしか配布してない。
と言うわけで詰んだ。

MacOSXをUpdateするか、Xcode3.1.2あたりがどこかに落ちてないか探すかだな。

Xcodeのdev版みっけ

http://connect.apple.com/
にログインしてDownload>Developer Toolsカテゴリを調べていたらにMacOSX 10.5(Leopard)でも行けるXcode3.1.3のdev版を見つけた。
無事落として、インストール出来ました!
(追記)今見たら3.1.4もあって、そっちもMacOSX 10.5対応だった。そっちでも良かった。

PHP5.2をインストール

まずは、古いPHPをアンインストールPHP5.2.X系はphp52というパッケージになった且つ、php5と共存出来ないようなので、一旦全部抜く。
port uninstall php5
では複数入っているので特定出来ないと怒られるので
port installedでインストール済みのソフト一覧を表示させて、個別に指定して抜く

mac-mini:~ $ sudo port uninstall php5 @5.3.0_3+apache2+macosx+mysql5+pear+sqlite
--->  Deactivating php5 @5.3.0_3+apache2+macosx+mysql5+pear+sqlite
--->  Uninstalling php5 @5.3.0_3+apache2+macosx+mysql5+pear+sqlite
mac-mini:~ $ sudo port uninstall php5
--->  Uninstalling php5 @5.2.6_0+apache2+macosx+mysql5+pear+sqlite

php52を指定してPHP5.2.11をインストール

mac-mini:~ $ sudo port install php52 +apache2+macosx+mysql5+pear+sqlite
Warning: Implicit variants should not be explicitly set or unset. macosx will be ignored.
--->  Computing dependencies for php52
--->  Fetching php52
--->  Attempting to fetch php-5.2.11.tar.bz2 from http://distfiles.macports.org/php5
--->  Verifying checksum(s) for php52
--->  Extracting php52
--->  Applying patches to php52
--->  Configuring php52
--->  Building php52
--->  Staging php52 into destroot
Note: php52 installs files outside the common directory structure.
--->  Installing php52 @5.2.11_1+apache2+macosx+mysql5+pear+sqlite
--->  Activating php52 @5.2.11_1+apache2+macosx+mysql5+pear+sqlite
You may need to update your php.ini for any changes that have been made
in this version of php. Compare /opt/local/etc/php5/php.ini with
/opt/local/etc/php5/php.ini-dist (if this is a development server) or
/opt/local/etc/php5/php.ini-recommended (if this is a production server).

If this is your first install, you need to activate PHP in your web server.

To enable PHP in Apache, run
  cd /opt/local/apache2/modules
  /opt/local/apache2/bin/apxs -a -e -n "php5" libphp5.so
--->  Cleaning php52
mac-mini:~ $

(追記)ログを読み返してみたら+macosxなんて指定は無効だ!バーカバーカ!って怒られてるな。

やった!復旧した。

でも、なんだか一部に支障が出ている(´Д`;)