Solaris10でperl5.10 SunStudio コンパイル編
perl5.10 使いましょう!ということで、普段の環境でも使えるように。
ちなみに環境は、Solaris 10 6/06 を入れた Blade100 です。CPUは UltraSPARC-IIe。
perl自体は、/usr/bin/perl 5.8.4 と /usr/local/bin/perl 5.8.7 でどちらもパッケージ。
/usr/bin/perlは、OS標準のperlなので/usr/local/bin/perlを上書きします。
perlのコンパイルですが、Configure;make;make test;make install となります。
Configure はそのまま実行すると、コンパイルオプションのウィザードが走りますが、、、 初心者お断りの内容です。というか、Cのオプションとかムリムリ。
なので、Configureの引数でウィザード入力なしでデフォルトコンパイルします。
1.デフォルトコンパイル
$ gzip -cd perl-5.10.0.tar.gz | tar xf -
$ cd perl-5.10.0
$ sh Configure -des
...
(省略)
...
$ make
...
(省略)
...
$ make test
...
(省略)
All tests successful.
u=29.89 s=10.23 cu=1733.86 cs=275.48 scripts=1388 tests=187897
2.スレッド有りのコンパイル
スレッド無し/有りでアーキテクチャ部分が変わって thread モジュールが追加されるのかな?
sun4-solaris => sun4-solaris-thread-multi
$ gzip -cd perl-5.10.0.tar.gz | tar xf -
$ cd perl-5.10.0
$ sh Configure -des -Dusethreads
...
$ make
...
$ make test
...
$ su
# make install
...
(省略)
...
# /usr/local/bin/perl -V
...
@INC:n /usr/local/lib/perl5/5.10.0/sun4-solaris-thread-multi
/usr/local/lib/perl5/5.10.0
/usr/local/lib/perl5/site_perl/5.10.0/sun4-solaris-thread-multi
/usr/local/lib/perl5/site_perl/5.10.0
/usr/local/lib/perl5/site_perl/5.8.7
/usr/local/lib/perl5/site_perl
...
#
3. INCで旧環境を外す
デフォルトで旧環境が入るというのは、モジュールがそのまま使えるからなのかな?
とあるので、こいつも追加して
$ /usr/local/bin/perl Configure --help
...
-Dinc_version_list=none do not include older perl trees in @INC
...
$ gzip -cd perl-5.10.0.tar.gz | tar xf -
$ cd perl-5.10.0
$ sh Configure -des -Dusethreads -Dinc_version_list=none
...
$ make;make test;
...
$ ./perl -V
...
@INC:n /usr/local/lib/perl5/5.10.0/sun4-solaris-thread-multi
/usr/local/lib/perl5/5.10.0
/usr/local/lib/perl5/site_perl/5.10.0/sun4-solaris-thread-multi
/usr/local/lib/perl5/site_perl/5.10.0
/usr/local/lib/perl5/site_perl
...
なんとか完了。
ちなみに遅いマシンなので、Configure 10分、make 20分、make test 40分 とかかかります。
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- -
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
2008/7/15 修正
"/usr/local/bin/perl Configure"とか実行していましたが、Configureの中みたら、、、sh でした。 <<そりゃそうだ。