RasPi2 Dahdi

さて前回、RasPi2でkernel compileする記事を書きましたが、理由はdahdiをインストールしたかったからです。

debianには、module-assistantというkernel moduleを自動作成してくれる便利なコマンドがあるのですが、raspi2のkernel-headers等々必要なdeb pkgが見当たらないので、仕方なくkernel compileを行いました。

asteriskとdahdiをapt-getでインストールします。

# apt-get update
# apt-get upgrade
# apt-get install asterisk dahdi
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています
状態情報を読み取っています... 完了
以下の特別パッケージがインストールされます:
  asterisk-config asterisk-core-sounds-en asterisk-core-sounds-en-gsm asterisk-modules
  asterisk-moh-opsound-gsm asterisk-voicemail autopoint dahdi-linux debhelper freetds-common
  fxload gettext html2text intltool-debian libgettextpo0 libgmime-2.6-0 libgpgme11 libical0
  libiksemel3 liblua5.1-0 libmail-sendmail-perl libneon27-gnutls libodbc1 libperl5.14 libpq5
  libpth20 libradiusclient-ng2 libresample1 libsaclm3 libsaevt3 libsensors4 libsnmp-base libsnmp15
  libsox-fmt-alsa libsox-fmt-base libsox2 libspeexdsp1 libsqlite0 libsybdb5
  libsys-hostname-long-perl libtonezone2.0 libunistring0 libvpb0 module-assistant po-debconf sox
  vpb-driver-source
提案パッケージ:
  asterisk-doc asterisk-dev asterisk-ooh323 asterisk-dahdi dh-make gettext-doc gpgsm gnupg2
  libmyodbc odbc-postgresql tdsodbc unixodbc-bin lm-sensors snmp-mibs-downloader libsox-fmt-all
  vpb-utils libmail-box-perl
以下のパッケージが新たにインストールされます:
  asterisk asterisk-config asterisk-core-sounds-en asterisk-core-sounds-en-gsm asterisk-modules
  asterisk-moh-opsound-gsm asterisk-voicemail autopoint dahdi dahdi-linux debhelper freetds-common
  fxload gettext html2text intltool-debian libgettextpo0 libgmime-2.6-0 libgpgme11 libical0
  libiksemel3 liblua5.1-0 libmail-sendmail-perl libneon27-gnutls libodbc1 libperl5.14 libpq5
  libpth20 libradiusclient-ng2 libresample1 libsaclm3 libsaevt3 libsensors4 libsnmp-base libsnmp15
  libsox-fmt-alsa libsox-fmt-base libsox2 libspeexdsp1 libsqlite0 libsybdb5
  libsys-hostname-long-perl libtonezone2.0 libunistring0 libvpb0 module-assistant po-debconf sox
  vpb-driver-source
アップグレード: 0 個、新規インストール: 49 個、削除: 0 個、保留: 0 個。
21.2 MB のアーカイブを取得する必要があります。
この操作後に追加で 40.7 MB のディスク容量が消費されます。
続行しますか [Y/n]? Y

ITU-T 電話コードは、「81」

asterisk

大量のpkgがインストールされます。

その後、dahdi.ko等のkernel moduleを別途インストールします。

dahdiのmake

# cd /usr/src
# wget http://downloads.asterisk.org/pub/telephony/dahdi-linux-complete/dahdi-linux-complete-current.tar.gz

現在のバージョンは、2.10.1なのでmvしておく。

# mv dahdi-linux-complete-current.tar.gz dahdi-linux-complete-2.10.1.tar.gz
# tar zxvf dahdi-linux-complete-2.10.1.tar.gz

今回は、dahdi_dummyのみ必要なため、Kbuidを修正する。

# cd dahdi-linux-complete-2.10.1+2.10.1
# vi vi linux/drivers/dahdi/Kbuild

Kbuildのdiff

# diff Kbuild Kbuild-
2c2
< obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_DUMMY) += dahdi_dummy.o
---
> #obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_DUMMY) += dahdi_dummy.o
10,15c10,15
< #obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_OCT612X) += oct612x/
< #obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_WCT4XXP) += wct4xxp/
< #obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_WCTC4XXP) += wctc4xxp/
< #obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_WCTDM24XXP) += wctdm24xxp/
< #obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_WCTE12XP) += wcte12xp/
< #obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_WCTE13XP) += wcte13xp.o
---
> obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_OCT612X) += oct612x/
> obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_WCT4XXP) += wct4xxp/
> obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_WCTC4XXP) += wctc4xxp/
> obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_WCTDM24XXP) += wctdm24xxp/
> obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_WCTE12XP) += wcte12xp/
> obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_WCTE13XP) += wcte13xp.o
23c23
< #obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_WCTE43X) += wcte43x.o
---
> obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_WCTE43X) += wcte43x.o
31c31
< #obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_WCAXX) += wcaxx.o
---
> obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_WCAXX) += wcaxx.o
39,48c39,48
< #obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_WCTDM) += wctdm.o
< #obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_VOICEBUS) += voicebus/
< #obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_WCB4XXP) += wcb4xxp/
<
< #obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_WCT1XXP) += wct1xxp.o
< #obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_WCTE11XP) += wcte11xp.o
<
< #obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_WCFXO) += wcfxo.o
< #obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_TOR2) += tor2.o
< #obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_PCIRADIO) += pciradio.o
---
> obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_WCTDM) += wctdm.o
> obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_VOICEBUS) += voicebus/
> obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_WCB4XXP) += wcb4xxp/
>
> obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_WCT1XXP) += wct1xxp.o
> obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_WCTE11XP) += wcte11xp.o
>
> obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_WCFXO) += wcfxo.o
> obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_TOR2) += tor2.o
> obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_PCIRADIO) += pciradio.o
51c51
< #obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_XPP) += xpp/
---
> obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_XPP) += xpp/

make&installする

# make -j6
# make install

/etc/dahdi/system.confを書く
system.confに何も書かなければ、dahdi_dummyが読み込まれるそうだが、とりあえず明示しておく。

# less system.conf
# Autogenerated by /usr/sbin/dahdi_genconf on Tue Apr  7 14:48:14 2015
# If you edit this file and execute /usr/sbin/dahdi_genconf again,
# your manual changes will be LOST.
# Dahdi Configuration File
#
# This file is parsed by the Dahdi Configurator, dahdi_cfg
#
# Global data

loadzone        = jp
defaultzone     = jp

# DAHDI Dummy
dahdi_dummy

確認のため、dahdi.koを読み込んでみる。

$ lsmod
Module                  Size  Used by
dahdi                 207627  0
crc_ccitt               1141  1 dahdi

これでasteriskを設定する準備が出来た。

次は、asterisk本体を設定していく。

 

RasPi2 Dahdi” への3件のフィードバック

  1. Bee のコメント:

    はじめまして。

    DAHDIインストールを貴ホームページを参考に試みています。
    しかしながら,なかなかうまくいかずに困っています。
     わたくしの現在の開発?環境は,raspnebrry pi 3,B  Rasbian lite です。
     raspi2,kernel-make の箇所は,自信は御座いませんが掲載記事を参考に進めました。
      
     DAHDIの現在のバージョンは,-2.11.1+2.11.1 でしたので,ホームページ掲載の,
     -2.10.1+2.10.1を -2.11.1+2.11.1に読み換えて進めています。
      
     ご多忙のところ大変恐縮ですが,下記お教えください。
     
     <>掲載記事に”今回は、dahdi_dummyのみ必要なため、Kbuidを修正する。”
     
     とございますが,どこをどのように修正すればよいのか不明です。
     ご多忙のところ申し訳御座いませんが,なにとぞ,宜しくお願い申し上げます。

    ご返信お待ち申し上げます。

    • taizho のコメント:

      いやいや、ずいぶん前の記事でRasPiも稼働していない状況で確認が出来ないので申し訳ないのですが、
      Kbuildのdiffがあるので、これを読んでみると、必要なモジュール以外をコメントアウトしたような・・・

      < obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_DUMMY) += dahdi_dummy.o
      ---
      > #obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_DUMMY) += dahdi_dummy.o
      10,15c10,15
      

      こんなかんじですので、不要なカ所に「#」を追加していけば良いと思います。
      元々、dahdi_dummy.oはbuildしないけれど、必要なので、「#」を外し、不要なmoduleは「#」を追加していくみたいな感じで。

      役に立たず申し訳ありません。

  2. Bee のコメント:

    ご返信ありがとうございます。

    DAHDIの組込みができずに困っています。
    引き続き色々と試してみます。

    ありがとうございました。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA