47",enable_page_level_ads: true}); #3.3">
3.3 perl 5.22 インストール
3.4 perl 5.24 削除

3.1 前準備

 現在 5.14 が稼働中なのですが、既に 5.20 まで ports に存在するではないか。  やれやれ、以前に perl のバージョンアップ時は苦労した思い出があるからなぁ。  とこの記事を書いたのが 2015年5月10日で、2015年5月31日にやっと作業にかかろうと思ったら、やや、perl 5.22 があるではないですか、ということで、perl 5.22 へのバージョンアップとなります。焦ってバージョンアップしてなくてよかった。  と思ったら、一度にあげるんじゃなかった。下にぐだぐだ書いていますが、次にチャンスがあればもっとうまくやりたいと思います。  結論めいたことを言えば、perl は 4 とびこしは共存できないので  perl5.14 から perl5.22 にあげるには perl5.16 を install perl5.18 を install perl5.14 を deinstall perl5.20 を install perl5.16 を deinstall perl5.22 を install perl5.18 を deinstall  という手順でインストールして、その途中で依存関係をうまく解消していくしかなさそうです。  perl5.22 が出るまで 5.14 のままほったらかしていた、わたしが悪い…と。なので、perl はときどきリリース状況を見て、こまめにバージョンアップしましょう。  (クリーンインストールした方が早かったような気がする 汗)

3.2 前準備

 例のごとく、データベースとシステムのバックアップをとります。  「8.1 計画」のときと同じ要領で。

3.3 perl 5.22 インストール

 perl 5.14 を先に消すのか perl 5.22 を先にインストールするのかという問題がありますが、現在稼働しているアプリケーションで perl 5.14 を使用している者がある以上、perl 5.22 を先にインストールするのが筋でしょう。  ということで、

> /usr/ports/lang/perl5.22
> make
> make install
 make の時点で

===>  perl5.22-5.22.0.r2 conflicts with installed package(s):
      perl5.14-5.14.4_14

      They install files into the same place.
      You may want to stop build with Ctrl + C.
 と出ちゃってますが・・・。ままよ。  make install の時点で

> make install
===>  Installing for perl5.22-5.22.0.r2
===>  Checking if perl5.22 already installed
===>   Registering installation for perl5.22-5.22.0.r2
Installing perl5.22-5.22.0.r2...
pkg-static: perl5.22-5.22.0.r2 conflicts with perl5.14-5.14.4_14 (installs files into the same place).  Problematic file: /usr/local/bin/c2ph
*** [fake-pkg] Error code 70

Stop in /usr/ports/lang/perl5.22.
*** [install] Error code 1

Stop in /usr/ports/lang/perl5.22.
 やはり、無理があったか・・・。  いったんサーバアプリケーションを停止して、

3.4 perl 5.14 削除


> pkg delete perl5.14
Updating database digests format: 100%
Checking integrity... done (0 conflicting)
Deinstallation has been requested for the following 80 packages (of 0 packages in the universe):

Installed packages to be REMOVED:
        perl5.14-5.14.4_14
        autoconf-2.69
        help2man-1.43.3_1

		~ 中 略 ~

        suphp-0.7.2_1
        mod_dav_svn-1.8.13
        mod_php5-5.4.41,1

The operation will free 281 MiB.

Proceed with deinstalling packages? [y/N]:
 これはおそろしくインストールしなおさなければならなくなるのだな・・・。削除して

> /usr/ports/lang/perl5.22
> make install
 サーバアプリケーションを起動しようとして。おお、サーバアプリケーションそのものが消えているのがあるではないかこれらは、clean して install だな

> /usr/ports/www/apache22
> make clean
> make
> make install
 すると

===>   Registering installation for p5-Locale-gettext-1.05_4 as automatic
pkg-static: Unable to access file /usr/ports/devel/p5-Locale-gettext/work/stage/usr/local/./usr/local/lib/perl5/site_perl/mach/5.14/auto/Locale/gettext/.packlist: No such file or directory
*** [fake-pkg] Error code 74
 はいはい

> /usr/ports/devel/p5-Locale-gettext
> make clean
> make
> make install
 あれ、make install で同じことになる。しょうがないので pkg から install することにする。

> pkg install p5-Locale-gettext
Updating FreeBSD repository catalogue...
Fetching meta.txz: 100%    968 B   1.0kB/s    00:01
Fetching packagesite.txz: 100%    5 MiB   1.3MB/s    00:04
Processing entries: 100%
FreeBSD repository update completed. 24079 packages processed.
Updating database digests format: 100%
The following 60 package(s) will be affected (of 0 checked):

Installed packages to be REMOVED:
        python27-2.7.9_1
        scons-2.3.0_1
        python2-2_3
        python-2.7_2,2
        xcb-proto-1.11
        py27-setuptools27-5.5.1_1
        py27-MarkupSafe-0.23
        py27-Jinja2-2.7.3
        py27-Babel-1.3_2
        py27-pytz-2014.10,1
        py27-sphinx-1.2.3
        py27-pygments-2.0.2
        py27-docutils-0.12
        cmake-3.1.3
        libgd-2.1.0_5,1
        tiff-4.0.4.b_1
        analog-6.0_10,1
        ja-webalizer-2.23.8_3
        ruby21-bdb-0.6.6_4
        ruby-2.1.6,1
        portupgrade-2.4.14,2
        libxslt-1.1.28_6
        libarchive-3.1.2_2,1

New packages to be INSTALLED:
        p5-Locale-gettext: 1.05_4
        perl5: 5.20.2_4
        libXaw: 1.0.12_3,2
        printproto: 1.0.5
        libXp: 1.0.3,1
        libXmu: 1.1.2_3,1

Installed packages to be REINSTALLED:
        gettext-runtime-0.19.4 (ABI changed: 'freebsd:8:x86:32' -> 'freebsd:9:x86:32')
        libiconv-1.14_8 (ABI changed: 'freebsd:8:x86:32' -> 'freebsd:9:x86:32')
        gettext-tools-0.19.4 (ABI changed: 'freebsd:8:x86:32' -> 'freebsd:9:x86:32')
        expat-2.1.0_2 (ABI changed: 'freebsd:8:x86:32' -> 'freebsd:9:x86:32')
        gnupg1-1.4.19 (ABI changed: 'freebsd:8:x86:32' -> 'freebsd:9:x86:32')
        libxml2-2.9.2_2 (ABI changed: 'freebsd:8:x86:32' -> 'freebsd:9:x86:32')
        freetype2-2.5.5 (ABI changed: 'freebsd:8:x86:32' -> 'freebsd:9:x86:32')
        jpeg-8_6 (ABI changed: 'freebsd:8:x86:32' -> 'freebsd:9:x86:32')
        t1lib-5.1.2_4,1 (ABI changed: 'freebsd:8:x86:32' -> 'freebsd:9:x86:32')
        libXau-1.0.8_3 (ABI changed: 'freebsd:8:x86:32' -> 'freebsd:9:x86:32')
        libxcb-1.11_1 (ABI changed: 'freebsd:8:x86:32' -> 'freebsd:9:x86:32')
        libXdmcp-1.1.2 (ABI changed: 'freebsd:8:x86:32' -> 'freebsd:9:x86:32')
        xcb-util-0.4.0_1,1 (ABI changed: 'freebsd:8:x86:32' -> 'freebsd:9:x86:32')
        xcb-util-renderutil-0.3.9_1 (ABI changed: 'freebsd:8:x86:32' -> 'freebsd:9:x86:32')
        libpthread-stubs-0.3_6 (ABI changed: 'freebsd:8:x86:32' -> 'freebsd:9:x86:32')
        libX11-1.6.2_3,1 (ABI changed: 'freebsd:8:x86:32' -> 'freebsd:9:x86:32')
        libXt-1.1.4_3,1 (ABI changed: 'freebsd:8:x86:32' -> 'freebsd:9:x86:32')
        libSM-1.2.2_3,1 (ABI changed: 'freebsd:8:x86:32' -> 'freebsd:9:x86:32')
        libICE-1.0.9_1,1 (ABI changed: 'freebsd:8:x86:32' -> 'freebsd:9:x86:32')
        libXpm-3.5.11_3 (ABI changed: 'freebsd:8:x86:32' -> 'freebsd:9:x86:32')
        libXext-1.3.3_1,1 (ABI changed: 'freebsd:8:x86:32' -> 'freebsd:9:x86:32')
        subversion-1.8.13 (ABI changed: 'freebsd:8:x86:32' -> 'freebsd:9:x86:32')
        serf-1.3.8 (ABI changed: 'freebsd:8:x86:32' -> 'freebsd:9:x86:32')
        gdbm-1.11_2 (ABI changed: 'freebsd:8:x86:32' -> 'freebsd:9:x86:32')
        db5-5.3.28_2 (ABI changed: 'freebsd:8:x86:32' -> 'freebsd:9:x86:32')
        postgresql84-client-8.4.22_1 (ABI changed: 'freebsd:8:x86:32' -> 'freebsd:9:x86:32')
        postgresql84-server-8.4.22_2 (ABI changed: 'freebsd:8:x86:32' -> 'freebsd:9:x86:32')
        oniguruma4-4.7.1_1 (ABI changed: 'freebsd:8:x86:32' -> 'freebsd:9:x86:32')
        unbound-1.5.3_1 (ABI changed: 'freebsd:8:x86:32' -> 'freebsd:9:x86:32')
        bash-4.3.33 (ABI changed: 'freebsd:8:x86:32' -> 'freebsd:9:x86:32')
        libidn-1.29 (ABI changed: 'freebsd:8:x86:32' -> 'freebsd:9:x86:32')

The operation will free 83 MiB.
45 MiB to be downloaded.

Proceed with this action? [y/N]:
 なるほど、FreeBSD 8.4 RELEASE のままのものが相当あるわけね。非常事態なのでしょうがない。思い切って [y]  なんとかインストールできたみたいなので再度

> /usr/ports/www/apache22
> make clean
> make
> make install
 うむ、これは相当時間がかかるなぁ。100% で CPU が動いてますな。並行して他のアプリケーションもインストールしたいが、こういうときあせるとろくなことがないので我慢、我慢。  なんか…その…、SSL エンジン用のファイルを作成しているらしい…。

> /usr/local/etc/rc.d/apache22 configtest
Performing sanity check on apache22 configuration:
httpd: Syntax error on line 109 of /usr/local/etc/apache22/httpd.conf: Cannot load /usr/local/libexec/apache22/mod_dav_svn.so into server: Cannot open "/usr/local/libexec/apache22/mod_dav_svn.so"
 んで

> /usr/ports/www/mod_dav_svn
> make clean
> make
> make install
 apache が動くようになったかと思えば、php が動かない。
/usr/ports/lang/php5
/usr/ports/lang/php5-extensions
/usr/ports/www/mod_php5
 をいれたり
/usr/ports/editors/vim
/usr/ports/mail/spamassassin
 をいれたり、もう整理できなくらいいろいろなことがあって…。  どうしてもはいらないようなものは pkg でインストールしたりして…。上の結論に達するのです。
 
 
カウンタバックグラウンド