follow me

CLFS(1.1.0-Sparc64-Pure64)-基本ツール構築(3)

Sparc64用の基本ツールを構築します。ここで作成した環境を実機に持って行きLFS環境をビルドしていく事になります。

◆環境変数の設定
開発ツール類をクロス開発環境を使う様に環境変数を設定します。
$ export CC="${CLFS_TARGET}-gcc"
$ export CXX="${CLFS_TARGET}-g++"
$ export AR="${CLFS_TARGET}-ar"
$ export AS="${CLFS_TARGET}-as"
$ export RANLIB="${CLFS_TARGET}-ranlib"
$ export LD="${CLFS_TARGET}-ld"
$ export STRIP="${CLFS_TARGET}-strip"

$ echo export CC=\""${CC}\"" >> ~/.bashrc
$ echo export CXX=\""${CXX}\"" >> ~/.bashrc
$ echo export AR=\""${AR}\"" >> ~/.bashrc
$ echo export AS=\""${AS}\"" >> ~/.bashrc
$ echo export RANLIB=\""${RANLIB}\"" >> ~/.bashrc
$ echo export LD=\""${LD}\"" >> ~/.bashrc
$ echo export STRIP=\""${STRIP}\"" >> ~/.bashrc

◆Binutils-2.18のビルド
Pure64でのビルドなので、disable-multilibを指定しています。
multilib環境を作成するとなると、32bit、64bitの2回ビルドする必要が出てきたり、/lib、/lib64の使い分けなどを考慮するなどが発生します。
$ patch -Np1 -i ../binutils-2.18-posix-1.patch
$ patch -Np1 -i ../binutils-2.18-branch_update-3.patch
$ mkdir -v ../binutils-build
$ cd ../binutils-build
$ CC="${CC} ${BUILD64}" \
    ../binutils-2.18/configure --prefix=/tools \
    --build=${CLFS_HOST} --host=${CLFS_TARGET} --target=${CLFS_TARGET} \
    --disable-nls --enable-shared --enable-64-bit-bfd \
    --disable-multilib
$ make configure-host
$ make
$ make install
実施時のログ:6.3-Binutils-2.18.log
follow me

Nagiosの表示がおかしい(Vine 5.0)

とあるサーバルームも監視を真面目にやろうと思い立った訳で、Nagios入れてみた。
まだ試し段階なので、Vine 5.0環境作って、apt-getで突っ込んでみた。
表示されてるけど、なんか左のメニューがリンク切れ、かつ表示がおかしぃ。

どうやら、php5-apache2パッケージが必要な様だ。
RPMの依存関係付けてくれればいいのに。。。

follow me

ダンボールスピーカー

僕の家では音響効果は期待できない。。。

follow me

Pentium4でESXi 4.0が動いてる?

たしかESXi 4.0以上は、VKernelが64bit必須だったような記憶が。。。
なぜか、Socket478のPentium4でESXi 4.0が起動。。。
ML115 G1で以前使ってたHDDを繋ぎ変えたら起動してしまった。
どうみてもCPUはPentium4って認識してるしなぁ。Socket478でのPentium4はEM64Tは非対応だったはずじゃ。。。



[2010/11/07追記]
どうやら僕は、Socket478の最後にわずかに存在したEM64T対応のPrescottを拾ってきたようだ。
これはレアだが、発熱でか過ぎ。。。ピン折りで電圧下げるしかないか。。。
出来れば周波数も少し下げたいなぁ。
HTは有効なまま上手くできないかな。。。
follow me

CLFS(1.1.0-Sparc64-Pure64)-クロス開発環境構築(2)-Binutilsエラー

sparc64用のクロスコンパイル環境を構築する際、binutilsのビルドでエラーが発生。
WARNINGメッセージ箇所にも在る様に、Texinfoパッケージがホストシステム上に必要になります。
CLFSの事前の依存環境チェックでは飛ばされている様なので、事前に導入しておくのが吉。
	rm -rf $backupdir; exit $rc
WARNING: `makeinfo' is missing on your system.  You should only need it if
         you modified a `.texi' or `.texinfo' file, or any other file
         indirectly affecting the aspect of the manual.  The spurious
         call might also be the consequence of using a buggy `make' (AIX,
         DU, IRIX).  You might want to install the `Texinfo' package or
         the `GNU make' package.  Grab either from any GNU archive site.
make[3]: *** [bfd.info] Error 1
make[3]: Leaving directory `/mnt/clfs/sources/binutils-build/bfd/doc'
Making info in po
make[3]: Entering directory `/mnt/clfs/sources/binutils-build/bfd/po'
( if test 'x../../../binutils-2.18/bfd/po' != 'x.'; then \
	    posrcprefix='../../../binutils-2.18/bfd/'; \
	  else \
	    posrcprefix="../"; \
	  fi; \
	  rm -f SRC-POTFILES-t SRC-POTFILES \
	    && (sed -e '/^#/d' \
	            -e '/^[ 	]*$/d' \
		    -e "s@.*@	$posrcprefix& \\\\@" < ../../../binutils-2.18/bfd/po/SRC-POTFILES.in \
		| sed -e '$s/\\$//') > SRC-POTFILES-t \
	    && chmod a-w SRC-POTFILES-t \
	    && mv SRC-POTFILES-t SRC-POTFILES )
( rm -f BLD-POTFILES-t BLD-POTFILES \
	    && (sed -e '/^#/d' \
	            -e '/^[ 	]*$/d' \
		    -e "s@.*@	../& \\\\@" < ../../../binutils-2.18/bfd/po/BLD-POTFILES.in \
		| sed -e '$s/\\$//') > BLD-POTFILES-t \
	    && chmod a-w BLD-POTFILES-t \
	    && mv BLD-POTFILES-t BLD-POTFILES )
cd .. \
	  && CONFIG_FILES=po/Makefile.in:po/Make-in \
	     CONFIG_HEADERS= /bin/sh ./config.status
config.status: creating po/Makefile.in
config.status: executing depfiles commands
config.status: executing libtool commands
config.status: executing default-1 commands
config.status: executing bfd_stdint.h commands
config.status: executing default commands
make[3]: Leaving directory `/mnt/clfs/sources/binutils-build/bfd/po'
make[3]: Entering directory `/mnt/clfs/sources/binutils-build/bfd/po'
make[3]: Nothing to be done for `info'.
make[3]: Leaving directory `/mnt/clfs/sources/binutils-build/bfd/po'
make[3]: Entering directory `/mnt/clfs/sources/binutils-build/bfd'
make[3]: Nothing to be done for `info-am'.
make[3]: Leaving directory `/mnt/clfs/sources/binutils-build/bfd'
make[2]: *** [info-recursive] Error 1
make[2]: Leaving directory `/mnt/clfs/sources/binutils-build/bfd'
make[1]: *** [all-bfd] Error 2
make[1]: Leaving directory `/mnt/clfs/sources/binutils-build'
make: *** [all] Error 2
follow me

CLFS(1.1.0-Sparc64-Pure64)-クロス開発環境構築(2)

x86環境上で、sparc64用のクロスコンパイル環境を構築します。
組み込み系の経験のある方なら馴れた工程だと思いますが、それ以外の方だとあまり見慣れない作業かもしれません。

◆環境変数の設定
まずは環境変数の設定をします。ホスト環境でのビルドフラグの影響を受けないように、CFLAFSのアンセットを実施し、--host、--targetの為の変数を設定します。
$ unset CFLAGS
$ unset CXXFLAGS
$ echo unset CFLAGS >> ~/.bashrc
$ echo unset CXXFLAGS >> ~/.bashrc
$ export CLFS_HOST="$(echo $MACHTYPE | \
    sed "s/$(echo $MACHTYPE | cut -d- -f2)/cross/")"
$ export CLFS_TARGET="sparc64-unknown-linux-gnu"
$ echo export CLFS_HOST=\""${CLFS_HOST}\"" >> ~/.bashrc
$ echo export CLFS_TARGET=\""${CLFS_TARGET}\"" >> ~/.bashrc

◆Build Flagsの指定
今回は、UltraSparc2でも動作させることを考えている為、以下設定としていますが、UltraSparc3以上であれば指定が「ultrasparc3」に変わります。
$ export BUILD64="-m64 -mcpu=ultrasparc -mtune=ultrasparc"
$ export GCCTARGET="-mcpu=ultrasparc -mtune=ultrasparc"
$ echo export BUILD64=\""${BUILD64}\"" >> ~/.bashrc
$ echo export GCCTARGET=\""${GCCTARGET}\"" >> ~/.bashrc

follow me

GT5発売日は11/30かもしれない

もしかすると、待ちに待ったGT5発売日は、2010/11/30かもしれない。
あくまでも「かも」です。
詳細は以下ホームページをヨクヨク見てください。
PS398114 | Gran Turismo® 5 | Sony | Sony Style USA
follow me

Sun microsystems Ultra20 M2

SunのOpteron機です。
このケースが好きなんですよ。
本当はUltra25が欲しかったんですが、Sparc機はほとんど出回らないってのがどうにも。。。

スペックは、こんな感じ。
・AMD DualCore Opteron 1210 1.80GHz
・DDR2/2048MB (1024MB×2/空きスロット2)
・HDD SATA 160GB
・10/100/1000BASE-T



follow me

CLFS(1.1.0-Sparc64-Pure64)-準備(1)

今回はx86環境でクロスコンパイル環境を構築し、Sparc64用のLFSを作成する。
ディスクを差し替える気は無いので、最後はtarで固めて実機に持っていくとします。

◆ファイルシステムの準備
CLFSの場合、CLFSビルド時に使ったHDDを利用しない場合もあるので、パーティションを切る意味が無い場合もありますが、今回はホストOSインストール先がVMwareESXiでシン・プロビジョニングでディスクを確保している為、シック・プロビジョニングのディスクを用意し、パーティション作成/フォーマットを実施しています。
[root@clfs ~]# fdisk /dev/sdb
[root@clfs ~]# mke2fs /dev/sdb1
[root@clfs ~]# debugfs -R feature /dev/sdb1
debugfs 1.41.4 (27-Jan-2009)
Filesystem features: ext_attr resize_inode dir_index filetype sparse_super large_file

◆ファイルシステムのマウント
[root@clfs ~]# mkdir -p /mnt/clfs
[root@clfs ~]# export CLFS=/mnt/clfs
[root@clfs ~]# mkdir -pv ${CLFS}
[root@clfs ~]# mount -v /dev/sdb1 $CLFS
mount: /dev/sdb1 へのファイルシステムタイプの指定がありません
       タイプ ext2 を試してみます
/dev/sdb1 on /mnt/clfs type ext2 (rw)

follow me

OpenBSD 4.8 Release

世の中、Fedora 14リリースで盛り上がっている様子だが。
BSDでも11/1にリリースされていますよ。OpenBSD 4.8 Release。


変更の大半は、ハードウェア対応の模様。
* 新規に追加されたドライバ … acpisony(4)、itherm(4)、se(4)、uguru(4)、owctr(4)、pgs(4)
* アップデートされたドライバ … em(4)、uaudio(4)、wbsio(4)、re(4)、udl(4)、envy(4)、inteldrm(4)、agp(4)
* 削除されたドライバ … ss(4)、usscanner(4)

新規に加わったツールとしては、こんな感じとな。
* Internet Key Exchange version 2デーモン(iked(8))
* LDAP(ldapd(8))デーモン

ソフトウェアバージョンはこんな感じに仕上がったそうな。
* OpenSSH 5.6
* GNOME 2.30.2
* KDE 3.5.10
* Mozilla Firefox 3.6.8
* http://OpenOffice.org 3.2.1
* PHP 5.2.13
* Mono 2.6.4
* http://X.Org 7.5(http://X.Org Server 1.8/Mesa 7.5.2)