プロフィール

けい

Author:けい
公開したWebサービス・アプリ一覧はこちら

※2014年12月、私が個人で開発したWebサービス・アプリへの
累計アクセス数は8億を超えました。
負荷対策頑張ります。日々精進していきます!!


■■■ 業務経歴 ■■■
社会人1年目:携帯電話開発。画面周りを1年間
2年目 :海外向け携帯電話ミドルウェア開発
     ブラウザとプロトコルスタック周り
2年目後半~:携帯電話の通信専用チップ開発
3年目:カーナビ。画面周りの開発
3年目後半~:BDビデオカメラ
     組み込みLinux カーネルと
     ドライバの開発。
4年目12月:プロジェクト途中で退社
~ここまではC、またはC++で開発~

~ここからJavaがメインの開発~
4年目1月:Web系の会社に転職
       ~4ヶ月間の研修
5年目5月:製造業向け生産管理システム開発
6年目9月:証券会社向けシステム開発
7年目10月~携帯電話向けコミックサイトの運用・開発
8年目12月:プロジェクト途中で退社

~ここからPHPがメインの開発~
8年目1月~仲介手数料が無料の不動産屋の社内SEに転職
交渉しほぼ完全に裁量労働が可能な立場になる。
業務内容はシステム全般ですが、
最近はSEO対策の作業が多いです。
現在14年目 まだ、しばらくはこの会社に居るつもりです。

あと、全ての記事がリンクフリーです。

最近の記事

過去ログ

全ての記事を表示する

全ての記事を表示する

カテゴリー

FC2カウンター

RSSフィード

asterisk 1.4.12のインストール(1)

新しいサービスを思いついたのでasterisk 1-4.12をインストールしてみる。
本来ならばaptを使ってサクサクインストールしたいところだが、
いかんせん安定性を重視するdebianではpackageが古い。
(現状stableでは1.2がインストールされる)
asteriskは1.2->1.4で劇的な進化をしているので、どうしても1.4が使いたいのだ。
ということでソースコードからmakeしてみる。
参考にした本はAsterisk徹底活用ガイド。
OSは最新のlinux-2.6.22。
ディストリビューションはdebianである。

asterisk 1-4.12 のインストールの前に
zaptelというパッケージのインストールが必要になる。
ここで注意しなければならないのが、zaptelのバージョンとasteriskのバージョンは
asterisk1.X系 ならばzaptelも1.X系にそろえる必要があると言うことである。
そのため残念ながらzaptelもaptでインストールすることはできない。

zaptelのインストール

?以下からソースを入手する
http://www.asterisk.org/downloads

?解凍する
?./configure を実行する
g++が入っていないと以下のエラーが出る場合がある
(configure: error: C++ preprocessor "/lib/cpp" fails sanity check)
また、menuconfig を動かすためにlibncurses5-dev パッケージも必要である。

?$ make menuconfig を実行し、以下にチェックを入れる
 ・Kernel Modules -> ztdummy
 ・Utility -> ztcfg
?$ make する
?$ sudo make install でインストールする
?$ sudo make config でinitに配置する。
$ sudo /etc/init.d/zaptel start を実行してみる。

・・・起動しない。うんともすんとも言わない。
ふん、伊達にdebianを8年も使っていないですよ私。
とりあえずはREADMEを読んでみる。
するとこんな記載を見つけた。

@@@@@@@@@@@@@@@
Build Requirements
------------------
You will need a matching kernel source tree and a working Linux build
system. Some of the programs require some additional libraries.

The script build_tools/install_prereq should help you install the
required packages. To see what it suggests, run:

build_tools/install_prereq test

You can either copy/paste that code to a terminal to run it, or just
run:

build_tools/install_prereq test

Kernel Configuration
~~~~~~~~~~~~~~~~~~~~
If you build a custom kernel, note the following configuration items:

- CONFIG_CRC_CCITT must be enabled ('y' or 'm'). On 2.6 kernels this can
be selected These can be selected from the "Library Routines" submenu
during kernel configuration via "make menuconfig".
- If you don't have any zaptel hardware, you need ztdummy.
* ztdummy on i386/amd64 and later kernels (>= 2.6.15) can (and should)
use the system's RTC (Real Time Clock).
* Alternatives to that for ztdummy are a UHCI USB controller (USB
controllers made by Intel or VIA) or a kernel that has HZ=1000
(default on kernels 2.6.0-2.6.12, optional on newer kernels. Not
possible on 2.4).
@@@@@@@@@@@@@@@

ええええ、意外とめんどくさいなこれ。
なるほど・・・
「Asterisk派生ディストリビューション」という摩訶不思議な造語が生まれた理由がわかる気がする。
つまりasterisk用に必要なモジュールを組み込んだカーネル + zaptel + asteriskが
ディストリビューションと呼ばれるほど需要があると言うか、
それほどまでに使いづらく、作りづらいわけですな。

愚痴っていても仕方がないのでとりあえずやるか。

?以下のコマンドを実行する。
$ ./build_tools/install_prereq test
#############################################
## test: test mode.
## Use the commands here to install your system.
#############################################
apt-get install -y    @@@この行に何のパッケージが抜けているかが表示される
#############################################
## test completed successfully
## (in test mode)
#############################################

色々、入っていないパッケージがある場合はここで指摘される。

?カーネルのリコンパイル。以下のモジュールをビルド対象とする。
・Library routing -> CRC-CCITT functions を組み込む
・Device Drivers -> Real Time Clock を組み込む
・Device Drivers -> USB support -> UHCI HCD(most Intel and VIA)
・Processor type and features -> TimerFrequency の周波数を1000に変更する。

?zaptel, ztdummyモジュールをインストールする。
※ここは数時間はまったところです。
結論から言うと、$ make install 時に作成される
/etc/init.d/zaptel は使ってはいけなかった。

なぜならばztdummyを有効にすればいいだけなのに、
「/etc/init.d/zaptel では/etc/zaptel.conf が存在するか?」などの処理が実行されており、
いつものように/etc/init.d/zaptel start | stop なんかを実行してもエラーが起きてしまうのだ。(しかもエラーメッセージは無い。)

手動でカーネルモジュールを有効にするには以下のコマンドを実行するだけでよい。
$ sudo insmod zaptel
$ sudo insmod ztdummy

モジュールがインストールされているかを確認する。
$ lsmod
Module Size Used by
ztdummy 5480 0
zaptel 180068 1 ztdummy

これでようやくzaptelのインストールは終了である。
(2)に続く
スポンサーサイト
コメント(0)   2007.10.05    [ Myカテゴリ:試してみた ]

コメントの投稿













管理者にだけ表示を許可する

Template Designed By
ぐらいんだぁ