= Cresc. =

>>The memory over IP
>>|

CentOS 5.5+mono 2.8+xsp 2.8+mod_mono 2.8インストールその4

2010-11-21 00:17:46 | Filesystem.log2

今回はxspのインストールです。

ログインして以下の状態からです。
[root@testmono ~]#

まずはApacheのインストールからです。
[root@testmono ~]# yum -y install httpd
そしてここで気を抜いてはいけません。
[root@testmono ~]# yum -y install httpd-devel
として開発版も入れておきましょう。

一応動作確認しておきましょうか。
[root@testmono ~]# /etc/init.d/httpd start
としてWebサーバーをスタートします。
ちなみに止めたい場合は
[root@testmono ~]# /etc/init.d/httpd stopt
いちいち動かすのが面倒なので起動と同時に動かしたい場合は
[root@testmono ~]# chkconfig httpd on
と入力します。
きどうと同時に動かしたくなくなった場合は
[root@testmono ~]# chkconfig httpd off
です。
さて、ここでhttp://192.168.0.4にウェブブラウザでアクセスすると
画面が表示されるはずなのですが出てきません。
原因はCentOSのファイアーウォールが働いて遮断されているのです。
とりあえず外部公開は目指してないのでここではファイアーウォールを切ります。
[root@testmono ~]# /etc/init.d/iptables stop
と入力します。
(外部公開目指している人はiptablesをちゃんと勉強して設定してネ)
再度http://192.168.0.4/にアクセスすると
Apache 2 Test Pageというページが出てくると思います。
いちいち止めるのは面倒だーという人は
[root@testmono ~]# chkconfig iptables off
と入力すれば起動時にスタートしませんです。
これでWebサーバー機能の追加は完了です。

ではxspのインストールをやっていきましょう。
[root@testmono ~]# wget http://ftp.novell.com/pub/mono/sources/xsp/xsp-2.8.1.tar.bz2
としてファイルをダウンロードします。
[root@testmono ~]# tar -xjvf xsp-2.8.1.tar.bz2
として解凍します。
xsp-2.8.1ディレクトリに移動してconfigureをやってみます。
[root@testmono ~]# cd xsp-2.8.1
[root@testmono xsp-2.8.1]# ./configure
なんと、エラーが出ずに完了してしまいました。
では…makeしてみましょう。
[root@testmono xsp-2.8.1]# make

Your sqlite3 version is old - please upgrade to at least v3.5.0!

Unhandled Exception: System.EntryPointNotFoundException: sqlite3_next_stmt
  at (wrapper managed-to-native) Mono.Data.Sqlite.UnsafeNativeMethods:sqlite3_next_stmt (intptr,intptr)
  at Mono.Data.Sqlite.SQLiteBase.ResetConnection (Mono.Data.Sqlite.SqliteConnectionHandle db) [0x00000] in :0
  at Mono.Data.Sqlite.SQLiteBase.CloseConnection (Mono.Data.Sqlite.SqliteConnectionHandle db) [0x00000] in :0
  at Mono.Data.Sqlite.SqliteConnectionHandle.ReleaseHandle () [0x00000] in :0
  at System.Runtime.InteropServices.CriticalHandle.Dispose (Boolean disposing) [0x00000] in :0
  at System.Runtime.InteropServices.CriticalHandle.Dispose () [0x00000] in :0
  at Mono.Data.Sqlite.SQLite3.Close () [0x00000] in :0
  at Mono.Data.Sqlite.SqliteConnection.Close () [0x00000] in :0
  at Mono.Data.Sqlite.SqliteConnection.Open () [0x00000] in :0
  at App.Main () [0x00000] in :0
make[3]: *** [dbpage1.sqlite] エラー 1
make[3]: ディレクトリ `/root/xsp-2.8.1/test/1.1/webcontrols' から出ます
make[2]: *** [all-recursive] エラー 1
make[2]: ディレクトリ `/root/xsp-2.8.1/test/1.1' から出ます
make[1]: *** [all-recursive] エラー 1
make[1]: ディレクトリ `/root/xsp-2.8.1/test' から出ます
make: *** [all-recursive] エラー 1

エラーで止まってしまいました。
上のほうに書いてますがsqliteのバージョンが3.5以上必要とのことです。
[root@testmono xsp-2.8.1]# sqlite3 -version
と入力してみると
3.3.6
の数字が!こりゃ駄目だな。
ということでxspのインストールは一時中断してsqliteのバージョンを上げていきましょう。

sqliteのダウンロードはこちらのページから
http://www.sqlite.org/download.html
ホームディレクトリに移動後sqlite-3.7.3.tar.gzをダウンロードしましょう。
[root@testmono xsp-2.8.1]# cd ~
[root@testmono ~]# wget http://www.sqlite.org/sqlite-3.7.3.tar.gz
バージョンは3.7.3なのでこいつならいけるはずです。
解凍します。
[root@testmono ~]# tar -xzvf sqlite-3.7.3.tar.gz
こんかいは3.3.6が既にインストールされているのでアップグレードインストールです。
そのためにはrpmを作ってインストールします。(これがまた面倒なんだ)

[root@testmono ~]# cd /usr/src/
に移動します。
redhatディレクトリを作り移動します。
[root@testmono src]# mkdir redhat
[root@testmono src]# cd redhat
SOURCESとSPECSディレクトリを作成します。
[root@testmono redhat]# mkdir SOURCES
[root@testmono redhat]# mkdir SPECS

ダウンロードしておいたsqlite-3.7.3.tar.gzファイルをSOURCESディレクトリにコピーします。
[root@testmono redhat]# cp ~/sqlite-3.7.3.tar.gz ./SOURCES/
sqliteの解凍しておいたファイルの中からspec.templateをSPECSディレクトリにコピーします。
[root@testmono redhat]# cp ~/sqlite-3.7.3/spec.template ./SPECS/
SPECSディレクトリに移動します。
[root@testmono redhat]# cd SPECS/

spec.templateは編集する必要があるのでviで編集をします。
[root@testmono SPECS]# vi spec.template
aを押して編集モードに入った後、
編集する場所は最初のほうの
%define version SQLITE_VERSION

%define version 3.7.3

中盤の
%setup -q -n %{name}

%setup -q -n %{name}-%{version}

最終行
%doc doc/*
を削除。

ESCボタンを押してShift+ZZで保存したらいよいよrpmの作成に取り掛かりましょう。
rpm作成コマンドがrpmbuildなのでこれを使いましょう。
[root@testmono SPECS]# rpmbuild -bb spec.template
-bash: rpmbuil: command not found
そーいえばrpmbuildインストールしてませんでしたね。
ということでyumでさくっとインストールしましょう。
[root@testmono SPECS]# yum -y install rpm-build
画面がずらーっと流れて止まったらrpmファイルの完成です。

一つ階層をあがってlsを入力してみるとディレクトリが増えてます。
[root@testmono SPECS]# cd ../
[root@testmono redhat]# ls
BUILD  RPMS  SOURCES  SPECS  SRPMS
RPMSの中に作ったrpmファイルがあるので移動してみます。
[root@testmono redhat]# cd RPMS/
lsを入力してみるとさらにディレクトリがあることがわかります。
[root@testmono RPMS]# ls
athlon  geode  i386  i486  i586  i686  noarch
名前からするとCPUごとに分かれてできるのかな?といった感じがします。
ちなみに私の環境ではi386ディレクトリにrpmファイルがありました。
[root@testmono RPMS]# cd i386/
[root@testmono i386]# ls
sqlite-3.7.3-1.i386.rpm  sqlite-devel-3.7.3-1.i386.rpm
こんな感じです。
ここでやっとアップグレードインストールですよ。
[root@testmono i386]# rpm -Uvh sqlite-3.7.3-1.i386.rpm
準備中...                ########################################### [100%]
   1:sqlite                 ########################################### [100%]
[root@testmono i386]# rpm -Uvh sqlite-devel-3.7.3-1.i386.rpm
準備中...                ########################################### [100%]
   1:sqlite-devel           ########################################### [100%]
ドキドキしながらsqliteのバージョンを確認してみましょう。
[root@testmono i386]# sqlite3 -version
3.7.3
ということで無事に3.5の壁を越えてます。
さて、xspの方に戻りますか。
[root@testmono i386]# cd ~/xsp-2.8.1
と入力して移動します。
環境が変わったのでconfigureからやり直します。
[root@testmono xsp-2.8.1]# ./configure
次にmake
[root@testmono xsp-2.8.1]# make
エラーが出ずに終わったらmake install
[root@testmono xsp-2.8.1]# make install
エラーが出ずに終わったらxspのインストールは完了です。


 


最新の画像もっと見る