« MySQL 4.1.19に更新apache20からapache22のportに移行した »

Trackback address for this post

Trackback URL (right click and copy shortcut/link location)

5 comments, 2 trackbacks

Trackback from: FreeBSD Notes [Visitor]
MySQL 4.1.19に更新
databases/mysql41-{server,client}のportsを4.1.18から4.1.19に更新。
2006/05/07 @ 21:22
Comment from: masken [Member]

buildworldbuildkernel共に、6.0環境下では、ccacheを使っていましたが、

今回は、以下のようになりました(最初に、ccache -zを実行して、以前の統計情報はクリアしてある)。

buildworld,buildkernel前後に、ccache -sを実行して得られた数値
 buildworld前buildworld後buildkernel後
cache hit025712577
cache miss0964410903
called for link-578579
multiple source files-11
not a C/C++ file-12091212
no input file-11
unsupported compiler option--1
files in cache294484873651254
cache size139.9 Mbytes218.0 Mbytes233.9 Mbytes

差分
 buildword前
- buildworld後
buildkernel後
- buildworld後
cache hit25716
cache miss96441259
called for link5781
multiple source files10
not a C/C++ file12093
no input file10
unsupported compiler option-1
files in cache192882518
cache size78.1 Mbytes15.9 Mbytes

つまり、予想通り、Hitしませんでした。

ちなみに、所要時間は、私の環境下で、buildworldに、1時間20分31秒、buildkernelの方は、21分31秒でした。

これは、キャッシュがヒットしない状況なので、ccacheを使用しない場合よりも、若干、遅くなったと思われる。

2006/05/08 @ 04:14
Comment from: masken [Member]

FreeBSD 6.0の時にインストールしていたportsで、6.1の環境で、それらをアップグレードすると、USE_RC_SUBRを使ってetc/rc.d内にインストールされるスクリプトの名前が変わる場合があった(mysql-serverやmemcachedのportsでそうだった)。

pkgtools.confBEFOREDEINSTALや、AFTERINSTALの箇所で、上記のようなスクリプトの名前を指定して、インストール前後に自動的にデーモンを停止・起動するよう設定している場合、要確認。

2006/05/08 @ 17:34
Comment from: masken [Member]

6.1-RELEASEでは存在しなくなったファイル等での差分は、まず最初に、6.0の環境下で、

# cd /usr/src
# make installworld DESTDIR=/home/6_0

を実行し、その後、6.1環境下で同様に、

# make installworld DESTDIR=/home/6_1

を実行して、6.0の方だけに含まれているファイルを得るため、

#!/usr/local/bin/perl -w

use strict;
use File::Find;

my $old_root_dir = q(/home/6_0/);
my $new_root_dir = q(/home/6_1/);

my $ignore_dir = '(?:etc|home|usr/(?:home|local)|sys|var)/';

find(\&do_diff, $old_root_dir);

sub do_diff {
  my $file_name = $File::Find::name;

  if ($file_name =~ m#^${old_root_dir}(.+)$#) {
    my $base_name = $1;


    if ($base_name !~ m#^${ignore_dir}#
        && !(-e $new_root_dir . $base_name)) {
      print "/" . $base_name . "\n";
    }
  }
}

といったスクリプトを書いて調べました。

なお、/etc/make.confには、両者(6.0と6.1の環境)とも、

NO_I4B=
NO_PROFILE=

を指定してあったので、もし、それに関連するものがあった場合は、上記の差分には含まれていません。

2006/05/09 @ 05:05
Comment from: masken [Member]

今回は、5.4から6.0に上げた時のように、大規模な変更でもないようなので、portsの方は、再構築しなくて済むかな?

と思ってはいたけど、FreeBSD 5.4から6.0にアップグレードしたマシンの/etc/make.confに、なぜか

  • CFLAGS = -O -pipe
  • COPTFLAGS = -O -pipe

の記述がされていたままになっていたので、この機会にRELENG_6標準の

  • CFLAGS = -O2 -fno-strict-aliasing -pipe

設定でコンパイルするため、上記のCFLAGSCOPTFLAGSの記述を/etc/make.confから削除し、再構築しなおした(CFLAGS等は、make時に、適切なものを割り当ててくれるようになってるから、理由がない限り、/etc/make.confの記述で固定しない方が良いみたいですね)。

2006/05/18 @ 02:06
Trackback from: FreeBSD Notes [Visitor]
FreeBSD 6.2-RELEASEにアップグレード
FreeBSD 6.2-RELEASEが出てきたようなので、今まで使っていたFreeBSD 6.1Rからアップグレードしてみた。
ソースの同期
6.2からは、csup(1)なるコマンドがベースシステムに組み込まれたけど、6.1で
2007/01/13 @ 21:43

This post has 43 feedbacks awaiting moderation...

Leave a comment


Your email address will not be revealed on this site.

Your URL will be displayed.
(Line breaks become <br />)
(Name, email & website)
(Allow users to contact you through a message form (your email will not be revealed.)