2010年 9月
asterisk-gui を使って、他のasteriskにつなげてみたがうまくいかない
asterisk-gui を使って、他のasteriskにつなげてみたが内線番号が表示されないので、extensions.conf をしげしげ眺めてみると、[macro-trunkdial-failover-0.3]マクロを直せばよいと分かった。
直す場所は、5行目の下の場所
exten = s,n,Set(CALLERID(all)=${IF($[${LEN(${CID_${ARG3}})} > 6]?${CID_${ARG3}}:${GLOBAL_OUTBOUNDCID})})
これを、↓のように直す。
exten = s,n,Set(CALLERID(all)=${IF($[${LEN(${CID_${ARG3}})} > 6]?${CID_${ARG3}}:${CALLERID(num)}<${GLOBAL_OUTBOUNDCID}>)})
なにか違うようなきがするが、これでできた。
あ~~つかれた。
玄箱 KURO-BOX/T4にasteriskをインストールする前にカーネルソースをどうにかする
makeするのに必要なものをいろいろ入れておく
# apt-get install gcc g++ libc6-dev make linux-libc-dev ncurses-dev perl-modules patch
dahdi asterisk をmakeするのにいろいろいるため、
下記URLから、linux-2.6.30.tar.bz2 をダンロードする。
http://kuroutoshikou.com/important/opensource/
/tmp にダウンロードしたとして。
# cd /usr/src/
# bzip2 -dc /tmp/linux-2.6.30.tar.bz2 | tar xvf –
# ln -s linux-2.6.30 linux
# cd linux
さて、ここで make modules を行いたいのだけれど、これがうまくいかないので、いろいろする。
シンボリックリンクの作成
#ln -s /usr/bin/ls /usr/bin/powerpc-linux-gnu-ld
#ln -s /usr/bin/objcopy /usr/bin/powerpc-linux-gnu-objcopy
Makefileがダメダメなので、修正する。
——-patch の中身 ↓———————————————————–
diff -ur linux-2.6.30_org/Makefile linux-2.6.30/Makefile
— linux-2.6.30_org/Makefile 2010-09-11 21:56:12.000000000 +0900
+++ linux-2.6.30/Makefile 2010-09-11 21:59:55.000000000 +0900
@@ -1,7 +1,7 @@
VERSION = 2
PATCHLEVEL = 6
SUBLEVEL = 30
-EXTRAVERSION = .1-BUFFALO
+EXTRAVERSION = .1-BUFFALO-svn1376
NAME = Man-Eating Seals of Antiquity
# *DOCUMENTATION*
@@ -338,6 +338,7 @@
CFLAGS_MODULE = $(MODFLAGS)
AFLAGS_MODULE = $(MODFLAGS)
LDFLAGS_MODULE =
+LDFLAGS_MODULE_PREREQ =
CFLAGS_KERNEL =
AFLAGS_KERNEL =
@@ -363,7 +364,7 @@
export VERSION PATCHLEVEL SUBLEVEL KERNELRELEASE KERNELVERSION
export ARCH SRCARCH CONFIG_SHELL HOSTCC HOSTCFLAGS CROSS_COMPILE AS LD CC
export CPP AR NM STRIP OBJCOPY OBJDUMP MAKE AWK GENKSYMS PERL UTS_MACHINE
-export HOSTCXX HOSTCXXFLAGS LDFLAGS_MODULE CHECK CHECKFLAGS
+export HOSTCXX HOSTCXXFLAGS LDFLAGS_MODULE LDFLAGS_MODULE_PREREQ CHECK CHECKFLAGS
export KBUILD_CPPFLAGS NOSTDINC_FLAGS LINUXINCLUDE OBJCOPYFLAGS LDFLAGS
export KBUILD_CFLAGS CFLAGS_KERNEL CFLAGS_MODULE
diff -ur linux-2.6.30_org/arch/powerpc/Makefile linux-2.6.30/arch/powerpc/Makefile
— linux-2.6.30_org/arch/powerpc/Makefile 2010-09-11 21:57:28.000000000 +0900
+++ linux-2.6.30/arch/powerpc/Makefile 2010-09-11 22:00:24.000000000 +0900
@@ -93,7 +93,7 @@
KBUILD_CFLAGS += $(call cc-option,-mtune=power4)
endif
else
-LDFLAGS_MODULE += arch/powerpc/lib/crtsavres.o
+LDFLAGS_MODULE_PREREQ += arch/powerpc/lib/crtsavres.o
endif
ifeq ($(CONFIG_TUNE_CELL),y)
@@ -231,7 +231,7 @@
echo ‘disable kernel modules’ ; \
false ; \
fi
– @if ! /bin/echo dssall | $(AS) -many -o $(TOUT) >/dev/null 2>&1 ; then \
+ @if ! [[ “/bin/echo dssall | $(AS) -many -o $(TOUT) >/dev/null 2>&1” ]] ; then \
echo -n ‘*** ${VERSION}.${PATCHLEVEL} kernels no longer build ‘ ; \
echo ‘correctly with old versions of binutils.’ ; \
echo ‘*** Please upgrade your binutils to 2.12.1 or newer’ ; \
diff -ur linux-2.6.30_org/scripts/Makefile.modpost linux-2.6.30/scripts/Makefile.modpost
— linux-2.6.30_org/scripts/Makefile.modpost 2010-09-11 22:17:16.000000000 +0900
+++ linux-2.6.30/scripts/Makefile.modpost 2010-09-11 22:16:20.000000000 +0900
@@ -122,14 +122,21 @@
cmd_cc_o_c = $(CC) $(c_flags) $(CFLAGS_MODULE) \
-c -o $@ $<
-$(modules:.ko=.mod.o): %.mod.o: %.mod.c FORCE
+quiet_cmd_as_o_S = AS $(quiet_modtag) $@
+cmd_as_o_S = $(CC) $(a_flags) $(AFLAGS_MODULE) -c -o $@ $<
+
+$(LDFLAGS_MODULE_PREREQ): %.o: %.S FORCE
+ $(call if_changed_dep,as_o_S)
+
+$(modules:.ko=.mod.o): %.mod.o: %.mod.c $(LDFLAGS_MODULE_PREREQ) FORCE
$(call if_changed_dep,cc_o_c)
targets += $(modules:.ko=.mod.o)
# Step 6), final link of the modules
quiet_cmd_ld_ko_o = LD [M] $@
– cmd_ld_ko_o = $(LD) -r $(LDFLAGS) $(LDFLAGS_MODULE) -o $@ \
+ cmd_ld_ko_o = $(LD) -r $(LDFLAGS) $(LDFLAGS_MODULE_PREREQ) \
+ $(LDFLAGS_MODULE) -o $@ \
$(filter-out FORCE,$^)
$(modules): %.ko :%.o %.mod.o FORCE
——-patch の中身 ↑———————————————————–
#make modules
これで準備は終わり。
後は、dahdi daudi-tools asterisk をインストールする。
asteriskインストールのその後
通話録音の受信側と着信側が別れてしまうので、soxをインストール
#apt-get install sox
CentOS5 で後からX Serverを入れる
yum でグループを見つける。
# yum grouplist
X Window System
GNOME Desktop Environment
を見つけたらこれをインストールする
# yum groupinstall “X Window System” “GNOME Desktop Environment”
インストールが終わったら
# X -configure
その後セットアップもGUIからやりたいので
# setup
注)setup はコンソールからやる必要があります。
後は、inittabを修正して終わり。
修正前 id:3:initdefault:
修正後 id:5:initdefault: