差分

移動先: 案内検索

玄箱Pro Debian+Asterisk

2,350 バイト追加, 2009年11月11日 (水) 00:33
DAHDI
:エレキジャック
:http://www.eleki-jack.com/Kurobox-pro2/2009/03/debian-gnulinux-50-lenny.html#more
上記を参考にするとDebian lennyのEABI環境になります。<br>
'''注意''':シリアルコンソールがないとDebian化は危険です。玄人指向のシリアルコンソールキットを使うか、改造してシリアルが使えるようにしてから実施してください。
 
==コンパイル環境を整える==
Debian化したならば、以下のパッケージを追加してAsteriskがコンパイルできるようにします。<br>
make
linux-libc-dev
linux-source-2.6.26
ncurses-dev
perl-modules
patch
# apt-get install gcc g++ libc6-dev make linux-libc-dev linux-source-2.6.26 ncurses-dev perl-modules patch
いろいろと一緒に付いてくるものもインストールしてしまってください。
 
==DAHDI==
===カーネルソースの準備コンパイルの準備===カーネルソースを/usr/srcに展開します。カーネルソースはlinuxコンパイル環境の準備。aptitudeでlinux-libc-devに付いてきます。これを/usr/src/の下で展開し、ln -s headersをインストールしておきます。この時、kbuildがいっしょに付いてきていることを確認しておいてください。 # aptitude install linux-sourceheaders-2.6.26 -2-all ===DAHDIのコンパイル===玄箱ではどのみちdahdi_dummyしか使えないので、余計なものをコンパイル&インストールするのは無駄です。必要なものだけをコンパイルするには以下のように行います。<br>DAHDIのソースを展開します。今ならDAHDI Completeを落としてきてください。<br>linux/usrdrivers/srcdahdi/linux などしてシンボリックリンクを作成しておきます。Kbuild を編集します。要らないものをコメントアウトします。<br>カーネルモジュールをを'''途中まで'''コンパイルします。一旦、make menuconfigなどして obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI) += dahdi.o obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_DUMMY) += dahdi_dummy.configを作ります。カーネルそのものを入れ換えるわけではないので、設定は適当でもかまいません。<br>o #obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_DYNAMIC) += dahdi_dynamic.configファイルのバージョンを以下のように書き直します。o #obj-$(DAHDI_BUILD_ALL)$(menuconfigで設定してもかまいませんがCONFIG_DAHDI_DYNAMIC_LOC)<br> += dahdi_dynamic_loc.o ~略~ CONFIG_INIT_ENV_ARG_LIMIT#obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_TOR2) +=32tor2.o CONFIG_LOCALVERSION#obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_PCIRADIO) +="pciradio.o #obj-2$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_XPP) += xpp/ obj-orion5x" <これ$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_ECHOCAN_JPAH) += dahdi_echocan_jpah.o CONFIG_LOCALVERSION_AUTOobj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_ECHOCAN_STEVE) +=ydahdi_echocan_sec.oこれでDAHDIをmakeしmake installします。<br>カーネルモジュールをmake modulesでコンパイルします。実際に欲しいのはmodpostコマンドなので、これがコンパイルできればCTRL終わったら depmod -Cブレークしてかまいません。ただし、モジュールがコンパイルされていないとzaptel/dahdiのmakeが何ぞ文句言うかもしれませんが。a をやっておきます。<br> HOSTCC あとはmake configでインストールされるスクリプトでDAHDIの起動/終了が行えます。 ===udevの調整===ユーザとグループを適当に登録しておきましょう。 # groupadd -g 5060 asterisk scripts# useradd -g 5060 -u 5060 -d /var/lib/asterisk -s /usr/sbin/nologin asteriskDAHDIをインストールすると、/modetc/file2aliasudev/rules.od に dahdi というファイルも入るので、これをリネームしておきます。リネームしたら、udevをリスタートします。 HOSTCC scripts# cd /modetc/modpostudev/rules.od # mv dahdi 99-dahdi HOSTCC scripts# /modetc/sumversioninit.od/udev restartこれで、上記のスクリプトなどでDAHDIをスタートすると、asterisk:asteriskのパーミッションでDAHDIがロードされます。 HOSTLD scriptsdebian:~# ls -l /dev/moddahdi/modpost < total 0 crw-rw---これが出たらCTRL-CブレークしてOK1 asterisk asterisk 196, 254 Nov 7 19:19 channel crw-rw---- 1 asterisk asterisk 196, HOSTCC 0 Nov 7 19:19 ctl scripts/kallsymscrw-rw---- 1 asterisk asterisk 196, 255 Nov 7 19:19 pseudo crw-rw---- 1 asterisk asterisk 196, 253 Nov 7 19:19 timer
==AsteriskAsteriskコンパイル==やはりGSM Asterisk 1.4系、1.6系ともにGSM CODECがasmで引っかかります。なので、codecs/gsm/Makefileを例によって修正します。
debian:~# uname -a
Linux debian 2.6.26-2-orion5x #1 Thu Nov 5 08:02:07 UTC 2009 armv5tel GNU/Linux
次のように追加しておく
ifeq (, $(findstring $(PROC) , x86_64 amd64 ultrasparc sparc64 arm armv5b armv5tel armeb hppa2.0 ppc powerpc ppc64 ia64 s390 bfin mipsel mips))
armv5bの後ろにarmv5telを追加すればOKです。<br><br>あとは普通にコンパイル/インストールできます。[[簡易インストールマニュアル]]を参考にして、インストールしてください。==バイナリ・パッケージ==テスト公開中。Debian lenny 2.6.26-2-orion5x 用です。不具合点お知らせください。<br>*DAHDI:ftp://ftp.voip-info.jp/asterisk/kuro-box/dahdi-bin-lenny-orion5x.tar.gz:ルートで展開した後、ldconfigとdepmod -aを実行します。/etc/init.d/dhadi start でロードでるはずです。*Asterisk:ftp://ftp.voip-info.jp/asterisk/kuro-box/asterisk-1.4.26.3-bin-armv5tel.tar.gz:ルートで展開して使用してください。上記のバイナリはテスト版です。不具合等の連絡お待ちしてます。

案内メニュー

VoIp-Info.jp

HP Directplus -HP公式オンラインストア-