I was just able to successfully build net/asterisk (1.2.9.1), misc/
libpri 1.2.3 (thanks to this patch: http://www.freebsd.org/cgi/query-
pr.cgi?pr=98499 (Thank you for the pointer, Thomas Sandford) and
zaptel-bsd trunk (from June 6) on my 6.1-RELEASE-p1 AMD64 system.
Everything, with the exception of zaptel-bsd was from ports.
I use zaptel hardware for timing, so all I had to do to get this
working was apply this patch to /usr/ports/net/asterisk/Makefile:
# diff -ruN Makefile Makefile.fix
--- Makefile Sun Jun 18 10:13:19 2006
+++ Makefile.fix Sun Jun 18 10:13:02 2006
@@ -47,10 +47,10 @@
.include <bsd.port.pre.mk>
-.if ${ARCH} != "i386"
-WITHOUT_H323= 1
-WITHOUT_ZAPTEL= 1
-.endif
+#.if ${ARCH} != "i386"
+#WITHOUT_H323= 1
+#WITHOUT_ZAPTEL= 1
+#.endif
.if defined(WITHOUT_H323)
PLIST_SUB+= WITH_H323="@comment "
and it compiled perfectly! Just make sure you compile and install
the zaptel-bsd-trunk svn source first, or else asterisk will install
the busted zaptel port and compile against those headers.
This begets another question: What's the deal with the misc/zaptel
port? Why is it so out of date? We're so close now, all we need is
a working zaptel port and a fix to the net/asterisk/Makefile to
remove that i386 zaptel limitation, and we're off to the races, no?
On 18-Jun-06, at 8:55 AM, Kim Culhan wrote:
Reading all the recent postings describing various build failures
made me wonder
if these programs were still buildable and functional without the
benefit of FreeBSD ports.
Turns out they are, so I did a quick writeup of the procedure used:
6-18-06 kc
To build asterisk from cvs HEAD for FreeBSD:
1) Install subversion from ports in /usr/ports/devel/subversion
2) Obtain asterisk and libpri from digium via subversion:
a) svn checkout http://svn.digium.com/svn/asterisk/trunk
asterisk
(Checked out revision 34576.)
b) svn checkout http://svn.digium.com/svn/libpri/trunk libpri
(Checked out revision 353.)
3) Obtain the FreeBSD zaptel driver via subversion:
svn co --username svn --password svn
https://svn.pbxpress.com:1443/repos/zaptel-bsd
(The above must all be on one line..)
(Checked out revision 39.)
4) Install newt from /usr/ports/devel/newt
5) Build libpri, making the following provisions/changes
a) Edit the libpri Makefile, making
INSTALL_BASE=/usr/local
b) Replicate the freebsd zaptel directory from
beneath zaptel-bsd/trunk/zaptel to the same
level as the libpri directory:
cp -R zaptel-bsd/trunk/zaptel .
So you have /usr/local/src/asterisk/libpri
and /usr/local/src/asterisk/zaptel
on the same directory level.
c) Compile Digium libpri: gmake
d) Install with: gmake install
6) Compile and install zaptel-bsd:
a) cd zaptel-bsd/trunk
b) make;make install
7) Compile and install asterisk:
a) gmake
b) Pay attention to the make process as it will probably
stop and
prompt for a restart. This means type gmake again..
b) gmake install
8) Arrange to load the zaptel loadable kernel modules
(compiled and installed in step 6 above)
when the system boots by adding the following to the
/boot/loader.conf file:
zaptel.ko_load="YES"
qozap.ko_load="YES"
wcfxo.ko_load="YES"
wcfxs.ko_load="YES"
wct1xxp.ko_load="YES"
wct4xxp.ko_load="YES"
wcte11xp.ko_load="YES"
You can arrange for asterisk to start at boot time by installing this
shell script
in /usr/local/etc/rc.d
This script was included with a FreeBSD port:
#!/bin/sh
# PROVIDE asterisk
# REQUIRE: NETWORKING SERVERS
# BEFORE: DAEMON
# KEYWORD: FreeBSD shutdown
#
# Add the following lines to /etc/rc.conf to enable asterisk:
#
# asterisk_enable="YES"
#
. /etc/rc.subr
name=asterisk
rcvar=`set_rcvar`
command=/usr/local/sbin/asterisk
pidfile=/var/run/asterisk.pid
asterisk_enable=${asterisk_enable:-"NO"}
/usr/local/bin/ztcfg
echo -n " zaptel"
load_rc_config $name
run_rc_command "$1"
The above procedure worked for me on FreeBSD 6.1-RELEASE which is
also known as FreeBSD-STABLE
YMMV if attempting this with other versions
Also, your mileage may really vary if you attempt this with
anything other than
Digium hardware
I couldn't guess what would happen if running 'generic clone' or
any other
cheeze ball knock-off hardware.. :)
My dmesg output looks like:
FXS device: vendor=e159 device=1 subvendor=b100
wcfxs0: <Wildcard TDM400P REV E/F> port 0xb800-0xb8ff mem
0xf3b60000-0xf3b60fff
irq 22 at device 1.0 on pci6
FXS Attach for wcfxs0: deviceID : 0xe159
wcfxs0: [FAST]
Freshmaker version: 71
Freshmaker passed register test
Module 0: Installed -- AUTO FXS
Module 1: Installed -- AUTO FXS
ProSLIC sanity check failed
Module 2: Not installed
Module 3: Installed -- AUTO FXO
Found a Wildcard TDM: Wildcard TDM400P REV E/F (4 modules)
I'm not paid by Digium and I don't know anyone there, but I do
believe in the
spirit of supporting them as they support us with Asterisk
regards
-kim
_______________________________________________
Asterisk-BSD mailing list
[email protected]
http://lists.digium.com/mailman/listinfo/asterisk-bsd
_______________________________________________
Asterisk-BSD mailing list
[email protected]
http://lists.digium.com/mailman/listinfo/asterisk-bsd