MRTGの謎

  • という題を付けたところで、根本的な原因はこれなんではなかろうかと思い当たった今日この頃。いま、/etc/make.confにはこんなことが書いてあります。
less /etc/make.conf 
# added by use.perl 2006-05-07 00:29:20
PERL_VER=5.8.7
PERL_VERSION=5.8.7
CPUTYPE=pentium3
  • /usr/share/examples/etc/make.confの該当箇所を見てみます。
# The CPUTYPE variable controls which processor should be targeted for
# generated code.  This controls processor-specific optimizations in
# certain code (currently only OpenSSL) as well as modifying the value
# of CFLAGS to contain the appropriate optimization directive to gcc.
# The automatic setting of CFLAGS may be overridden using the
# NO_CPU_CFLAGS variable below.
# Currently the following CPU types are recognized:
#   Intel x86 architecture:
#       (AMD CPUs)      opteron athlon64 athlon-mp athlon-xp athlon-4
#                       athlon-tbird athlon k8 k6-3 k6-2 k6 k5
#       (Intel CPUs)    nocona pentium4[m] prescott pentium3[m] pentium-m
#                       pentium2 pentiumpro pentium-mmx pentium i486 i386
#   Alpha/AXP architecture: ev67 ev6 pca56 ev56 ev5 ev45 ev4
#   AMD64 architecture: opteron, athlon64, nocona
#   Intel ia64 architecture: itanium2, itanium
#
# (?= allows to buildworld for a different CPUTYPE.)
#
#CPUTYPE?=pentium3
#NO_CPU_CFLAGS=         # Don't add -march=<cpu> to CFLAGS automatically
#NO_CPU_COPTFLAGS=      # Don't add -march=<cpu> to COPTFLAGS automatically
  • ところで、dmesgしてみます。
Copyright (c) 1992-2005 The FreeBSD Project.
Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
        The Regents of the University of California. All rights reserved.
FreeBSD 6.0-RELEASE-p7 #0: Tue May 16 05:54:32 JST 2006
Timecounter "i8254" frequency 1193182 Hz quality 0
CPU: Pentium II/Pentium II Xeon/Celeron (331.58-MHz 686-class CPU)
  Origin = "GenuineIntel"  Id = 0x66a  Stepping = 10
  Features=0x183f9ff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,MMX,FXSR>
real memory  = 201261056 (191 MB)
avail memory = 191639552 (182 MB)
  • はい、問題点が見えてきました。Mobile Celeronしか積んでないくせに、Pentium3だと認識させてコンパイルしてれば、まともに動くはずがない罠。この世代のPentium3にあってCeleronに存在しない機能というとSSEあたりだろうか?具体的にどの部分でマルチメディア系の拡張命令を使うのか分かりませんが、少なくともviを起動しようとしてIllegal Hardware Instructionが出てしまう時点でもはやどうしようもない状態なんだろうとは思います。orz
  • この状態で、make kernelもmake buildworldも通っちゃって、なおかつapacheやsambaに至っては正常動作していることがすごいです。(苦笑)週末までこの状態で騙し騙し動かし続けるしかないですね。場合によっては、明日の夜にえいッとやっちゃうかもしれませんが。今日はむりぽ。
  • とりあえず、ここまでのインストールに関する手順は確立できたように思えるので、コンパイルのスピードにも寄りますが、三日くらい全力投入すれば復旧できると思っておくことにしよう。土曜日の昼に出かけている間にmake worldできるくらいだとうれしいかも。