HowTo: HFC mit bristuff-0.2.0-RC3 unter SuSE 9.2 kompilieren

jui

Mitglied
Mitglied seit
18 Dez 2004
Beiträge
229
Punkte für Reaktionen
0
Punkte
0
Einsatz von bristuff-0.2.0-RC3 unter SuSE 9.2 (nicht rpm-Lösung !!!) mit HFC-Karte und AVM-Karte

Schritt 1: Installation von SuSE 9.2 (Kernel 2.6) OHNE asterisk-rpms
Folgende Pakete müssen zwingend vorhanden sein:

- Linux Kernel Sources (Paket kernel-sources)
- openssl incl. devel library
- gcc
- make Kommando
- patch
- bison
- termcap
- ncurses incl. devel library
- cvs
- wget

Schritt 2: Update mittels Online-Update
(auch Kernel aktualisieren und darauf achten dass auch kernel-sourcen aktualisiert werden)

Schritt 3: Einstellungen ISDN-Karten (CAPI, HFC)
Mittels YAST -> Netzwerkgeräte -> ISDN ->
- ISDN-Protokoll bei allen Karten auf Euro-ISDN einstellen (sollte bereits der Fall sein)
- HFC-Karten: Startmodus "Manuell" (damit HiSax nicht geladen wird)
- AVM-Karten: CAPI-Treiber auswählen

Schritt 4: Brisstuff besorgen (hier: bristuff-0.2.0-RC3)
http://83.137.99.170/jn/relaunch/asterisk/downloads/bristuff-0.2.0-RC3.tar.gz
- Archiv entpacken mit "tar zxf bristuff-0.2.0-RC3.tar.gz" und nach "/usr/src/asterisk" kopieren (vorher Verzeichnis /usr/src/asterisk" anlegen)

Schritt 4a: Asterisk für stabileren zaphfc-Treiber patchen
- Patch besorgen http://www.ip-phone-forum.de/forum/download.php?id=1100 (dieser patch ist nur für bristuff-0.2.0-RC3 getestet, Danke an user smartbyte für den patch!)
- Patchfile in /usr/src/asterisk/bristuff-0.2.0-RC3/asterisk-1.0.3/channels kopieren
- Befehl zum patchen ausführen: patch < chan_zap.patch.txt

Schritt 5: chan_capi besorgen (nur wenn AVM-Karte(n) auch zum Einsatz kommen)
http://83.137.99.170/jn/relaunch/asterisk/downloads/chan_capi.0.3.5.tar.gz
- Archiv entpacken mit "tar zxf chan_capi.0.3.5.tar.gz" und nach "/usr/src/asterisk" kopieren"

Schritt 6: Kernel-sourcen Symlinks anlegen SOFERN NOCHT NICHT VORHANDEN (x,y,z stehen für die Zahlen der aktuellsten Kernelversion im Verzeichnis)
- Wechsel in Verzeichnis /usr/src
- ln -s linux-2.6.x-y.z linux
- ln -s linux-2.6.x-y.z linux-2.6

Schritt 7: Jetzt mal sicherheitshalber einen Neustart ausführen

Schritt 8: Kernel vorbereiten
- cd /usr/src/linux
- make cloneconfig
- make prepare

Schritt 9: Bristuff kompilieren (Teil 1)
- cd /usr/src/asterisk/bristuff-0.2.0-RC3
- ./install.sh ausführen und komplett durchlaufen
HINWEIS: Aufgrund mehrfacher Nachfrage per PN weise ich darauf hin, dass die Asterisk-Sourcen bei diesem Schritt mit installiert werden. Die shell-Scripte download.sh und compile.sh werden durch install.sh aufgerufen und ausgeführt und machen das alles für Euch.
NOCH EINER: Immer wenn neuere Asterisk-Versionen freigegeben werden wandern die älteren Versionen in einen "old"-Pfad auf dem Digium-Server. Das heisst, dass download.sh aus dem Bristuff nicht mehr die gewünschten Archive besorgen kann und einen Fehler meldet. Die Pfade in download.sh müssen daher zunächst manuell angepasst werden. Dazu ggf. per ftp. mal auf den digium-Servern einloggen und nachsehen in welchen Pfaden die benötigten "älteren" Dateien liegen. Ihr dürft aber nicht einfach die Pfade gegen die neueren Versionen austauschen, sondern diese müssen auf die älteren Verweisen, sonst schlagen die patches fehl. Wenn ihr eine neuere Version wollt müsst ihr auch einen neueren Bristuff verwenden der die korrekten Pfade nutzt. Dabei ist ggf. Schritt 4a dieses HowTo dann hinfällig und sollte erstmal nicht ausgeführt werden.

Damit ist Asterisk noch nicht lauffähig, es muss noch ein wenig getrickst werden, aber durch diesen Schritt wird der folgende wohl erst möglich.

Schritt 10: Anpassen /etc/udev/rules.d/50-udev.rules (wurde wohl erst durch ./install.sh erzeugt, Danke an "schorsch" für den Hinweis)
Die Anpassung erfolgt durch Ergänzung der Datei 50-udev.rules um die in der README.udev angegebenen Zeilen (diese README befindet sich im entpackten Verzeichnis "/usr/src/asterisk/bristuff-0.2.0-RC3/zaptel-1.0.3"

Ich habe es unterhalb der "capi devices" eingefügt:
Code:
# Section for zaptel device
KERNEL="zapctl",     NAME="zap/ctl"
KERNEL="zaptimer",   NAME="zap/timer"
KERNEL="zapchannel", NAME="zap/channel"
KERNEL="zappseudo",  NAME="zap/pseudo"
KERNEL="zap[0-9]*",  NAME="zap/%n

Schritt 11: Bristuff kompilieren (Teil 2)
- cd /usr/src/asterisk/bristuff-0.2.0-RC3
- ./compile.sh ausführen und komplett durchlaufen (sollte jetzt klappen)
- ggf. am Ende wenn alles glatt gelaufen ist noch in das Verzeichnis asterisk-1.0.3 wechseln und dort einen "make samples" ausführen um die Beispiel-Konfigurationen zu erstellen.
ACHTUNG: Bereits vorhandene Konfigurationsdateien in /etc/asterisk werden hierbei durch die Beispieldateien überschrieben !!!!

Schritt 12: Anpassungen bei HFC-Karten
- Datei /etc/zaptel.conf anpassen
- Datei /etc/asterisk/zapata.conf anpassen

Schritt 13: chan_capi kompilieren (nur wenn AVM-Karte(n) auch zum Einsatz kommen)
- cd /usr/src/asterisk/chan_capi-0.3.5
- make
- make install

Schritt 14: Anpassung für AVM-Karten (nur wenn AVM-Karte(n) auch zum Einsatz kommen)
- Datei /etc/sterisk/capi.conf anpassen

Schritt 15: Rechner sicherheitshalber neu starten

Schritt 16: Asterisk starten
- cd /usr/src/asterisk/bristuff-0.2.0-RC3/zaphfc
- "make load" (TE-Modus der HFC-Karte) oder "make loadNT" (NT-Modus) aufrufen
- asterisk -vvvvvgc (Startet Asterisk in einem sehr detaillierten verbose-Mode)

NEUERE BRISTUFF-VERSIONEN:
Die Anleitung ist auch sinngemäß mit Bristuff 1.0.3a und 1.0.5 anwendbar. Lediglich bei Schritt 4a ist darauf zu achten, dass ein für die jeweilige Asterisk-Version passender Patch verwendet wird. Passende Patches werden ggf. von user smartbyte erstellt und hier im Forum zum Download angeboten. Ich bitte auch alle die dieses HowTo mit neueren bristuff verwenden diesem Thread kurze Erfahrungsberichte anzuhängen (auch wenn es problemlos durchläuft) und ggf. den Link zum jeweils passenden zaphfc-Patch zu posten.

Auch für Bristuff 0.2.0 RC7j kann man sinngemäß vorgehen, sollte hier aber den Schritt 4a zunächst weglassen, da die zaphfc-Treiber runderneuert wurden und ein neuer Asterisk (1.0.6) verwendet wird. Evtl. erübrigt sich das manuelle Patchen damit.

ANMERKUNG: Die Konfigurationsdateien modules.conf, capi.conf, extensions.conf, sip.conf, zapata.conf in /etc/asterisk müssen natülich angepasst sein damit asterisk startet.

Ausserdem können je nach Bedarfsfall auch noch die Dateien /etc/zaptel.conf und /etc/capi.conf wichtig für ein funktionierendes System sein. Konfigurationsdateien sind jedoch nicht Gegenstand dieser Anleitung, hier geht es nur darum unter SuSE 9.2 einen Asterisk mit HFC und CAPI-Karte grundsätzlich lauffähig zu machen.
Ggf. müssen auch Konfigurationsdateien aus den Quellverzeichnissen unterhalb von /usr/src/asterisk/bristuff-0.2.0-RC3 noch manuell an den richtigen Ort kopiert werden (zum Teil durch "make"-Befehle wie "make config", "make samples" möglich.


Ich habe nach dieser Vorgehensweise nun mein Asterisk mit einer AVM B1 (CAPI) und einer HFC (NT-Mode) auf einem SuSE 9.2 zum Laufen bekommen und bin nun unabhängig von den rpm-Paketen (die ja auch noch veraltet sind)

Verbesserungsvorschläge und Korrekturen sind erwünscht.

Korrektur-History:
1. Verbesserung von "schorsch" eingepflegt am 05.01.05, 11:50 Uhr
2. Schritt 4a zum patchen für stabileren zaphfc-Treiber eingepflegt am 05.01.05, 12:19 Uhr
3. Schritt 1 um das Programm "patch" ergänzt am 09.02.05, 22:49 Uhr
4. Abschnitt NEUE BRISTUFF-VERSIONEN hinzugefügt am 09.02.05 um 22:55 Uhr

5. Hinweis in Schritt 9 eingefügt am 05.05.2005, 11:00 Uhr
6. Schritt 11 korrigiert (install.sh ersetzt durch compile.sh) am 05.05.2005, 11:00 Uhr
 
Hi.

Ich würde noch den patch "zaphfc.cleanexit.patch" für die zaphfc Module einspielen.
Damit läuft der zaphfc Treiber stabiler
 
@lo4dro

So wie ich das deute ist der bei mir bereits in Schritt 4a eingepflegte patch genau dieser patch. Er wurde von smartbyte für den aktuellsten bristuff angepasst. ODer gibt es unterschiedliche patches?
 
ich denk es sind verschieden Patches
Dein patch wird "/usr/src/asterisk/bristuff-0.2.0-RC3/asterisk-1.0.3/channels" gepatch und betrifft das "echo" Problem.

Den Patch den ich meine heist anderst und wird "/usr/src/asterisk/bristuff-0.2.0-RC3/zaphfc/" gepatcht.
 
@lo4dro

Komisch, denn der Patch den ich eingepflegt hatte löste bei mir auch das "make unload"-Problem (Einfrieren des Rechners). Werde das mal durchtesten, danke für den Hinweis!
 
Hallo,

bin zwar neu hier aber ist es nicht so dass schritt 9 mit der ganzen angepassten sache durch schritt 11 (wieder alle sourcen neu holen und installen) gebügelt wird?

Gruß

mover

PS: Gigantische Homepage hier. Das ist ein wichtiger Bestandteil der deutschen Asterisk Scene hier :)
 
@Jui,

Ich bin nach deiner Anleitung vorgegangen, ausser das ich SuSE 9.1 einsetze, habe jedoch das Prob das mein CAPI / I4L nicht will und ich immer diesen Fehler habe.

[app_capiCD.so]Jan 8 19:47:35 WARNING[26933]: loader.c:258 ast_load_resource: /usr/lib/asterisk/modules/app_capiCD.so: undefined symbol: ast_capi_MessageNumber
Jan 8 19:47:35 WARNING[26933]: loader.c:440 load_modules: Loading module app_capiCD.so failed!
gic-tva-lin-001:/usr/src/asterisk/bristuff-0.2.0-RC3/zaphfc # Ouch ... error while writing audio data: : Broken pipe

Hast du eine Idee dazu ?

Gruss Lecram
 
@mover

Nein, denn erst durch Schritt 9 wird die udev-Datei angelegt, vorher existiert die garnicht. Natürlich macht Schritt 11 das Ganze dann nochmal, aber man hat dann die udev-Datein schon gepatcht sonst kann es wohl Probleme geben.
War ein Hinweis von "schorsch", dass erst nach dem ersten Kompilieren von Bristuff die udev-Datei /etc/udev/rules.d/50-udev.rules überhaupt angelegt wird. Ist aber auch so im HowTo dokumentiert.

@lecram
i4l hat hiermit nix mehr zu tun, Du machst ja CAPI und musst die /etc/asterisk/capi.conf anpassen und in der /etc/asterisk/modules.conf einen load => chan_capi.so einfügen und in [globals] einen chan_capi.so = yes eintragen.
Oder hast Du schon ein Problem mit diesen Meldungen beim kompilieren, das ist hier jetzt nicht so deutlich zu ersehen. Du solltest Deine AVM-KArte auf jeden Fall mit CAPI-Treiber im Yast einrichten und die Einrichtung mal durchlaufen und sicherstellen, dass die Karte auch mit CAPI aktiv ist.
Interessant finde ich auch den Fehler mit den audio data : Broken Pipe ... keine Ahnung!
 
@jui,

Ich habe nun die module.conf angepasst der Fehler ist nun weg danke :)

Nun habe ich einfach noch das Prob, das er meine AVM FritzPCI nicht findet beim make load

Code:
make load
make -C /usr/src/linux-2.6 SUBDIRS=/usr/src/asterisk/bristuff-0.2.0-RC3/zaphfc modules
make[1]: Entering directory `/usr/src/linux-2.6.5-7.111.19'

WARNING: Symbol version dump /usr/src/linux-2.6.5-7.111.19/Module.symvers is  missing, modules will have CONFIG_MODVERSIONS disabled.

  Building modules, stage 2.
  MODPOST
make[1]: Leaving directory `/usr/src/linux-2.6.5-7.111.19'
modprobe zaptel
insmod ./zaphfc.ko
ztcfg -v

Zaptel Configuration
======================


0 channels configured.

Meine capi.conf sieht so aus, da du sagst ich muss sie noch anpassen ist meine Frage wie.

Code:
;
;
; CAPI config
;
;
[general]
nationalprefix=41
internationalprefix=00
rxgain=0.8
txgain=0.8

[interfaces]

msn=10
incomingmsn=10
controller=1
softdtmf=1
accountcode=
context=default
;echosquelch=1
;echocancel=yes
;echotail=64
;callgroup=1
;deflect=12345678
devices=2i

msn=11
incomingmsn=11
controller=1
softdtmf=1
accountcode=
context=default
;echosquelch=1
;echocancel=yes
;echotail=64
;callgroup=1
;deflect=12345678
devices=2

Danke für deine Antwort :)

Gruss Lecram

----
edit rajo: Bitte die code-tags und nicht die quote-Tags für Quelltexte benutzen.
 
lecram schrieb:
@jui,

Ich habe nun die module.conf angepasst der Fehler ist nun weg danke :)

Nun habe ich einfach noch das Prob, das er meine AVM FritzPCI nicht findet beim make load
Was auch nicht verwunderlich ist, da der Bristuff/zapHFC überhaupt nichts mit AVM-Karten zu tun hat... Für AVM-Karten chan_capi (evtl. noch i4l) nehmen. Siehe posting von jui :
jui schrieb:
@lecram
i4l hat hiermit nix mehr zu tun, Du machst ja CAPI und musst die /etc/asterisk/capi.conf anpassen und in der /etc/asterisk/modules.conf einen load => chan_capi.so einfügen und in [globals] einen chan_capi.so = yes eintragen.

Ggf. hierzu mal in der "Asterisk ISDN mit CAPI" -Rubrik hier im Forum nachschauen. Ansonsten gilt: "capiinfo" unter Linux zeigt Dir an, ob Deine Karte erkannt wurde. Falls ja, Du chan_capi installiert hast, die Module für Asterisk geladen sind, soltest Du Asterisk starten können und mit "capi info" eine Ausgabe unter Asterisk bekommen
 
Hallo Leute!

Habe suse 9.2 mit allen notwendigen Aktualisierungen und Paketen installiert. Nachdem mit bristuff 0.2.0-RC3 die notwendigen Pakete (Asterisk u.s.w.) ja momentan leider nicht von ftp.digium.com downlaodbar sind, habe ich diese mir so besorgt und in /usr/src/asterisk/bristuff-0.2.0-RC3 in das jeweilige Verzeichnis (asterisk-1.0.3 u.s.w.) entpackt. Bei der Installation laufen zaptel und libpri ohne Fehler durch. Dann gehen aber die Fehler los. Bei der Installation von quadbri und hfc-pci treten die folgenden Fehler auf.


Code:
rm -f qozap.o *.ko *.mod.c *.mod.o .*o.cmd *~
make -C /usr/src/linux-2.6 SUBDIRS=/usr/src/asterisk/bristuff-0.2.0-RC3/qozap modules
make[1]: Entering directory `/usr/src/linux-2.6.8-24.11'

WARNING: Symbol version dump /usr/src/linux-2.6.8-24.11/Module.symvers is  missing, modules will have CONFIG_MODVERSIONS disabled.

  CC [M]  /usr/src/asterisk/bristuff-0.2.0-RC3/qozap/qozap.o
/usr/src/asterisk/bristuff-0.2.0-RC3/qozap/qozap.c: In function `qoz_fifo_tx':
/usr/src/asterisk/bristuff-0.2.0-RC3/qozap/qozap.c:216: error: structure has no member named `bytes2transmit'
/usr/src/asterisk/bristuff-0.2.0-RC3/qozap/qozap.c:221: error: structure has no member named `eoftx'
/usr/src/asterisk/bristuff-0.2.0-RC3/qozap/qozap.c:227: error: structure has no member named `bytes2transmit'
/usr/src/asterisk/bristuff-0.2.0-RC3/qozap/qozap.c:233: error: structure has no member named `bytes2transmit'
/usr/src/asterisk/bristuff-0.2.0-RC3/qozap/qozap.c:241: error: structure has no member named `bytes2transmit'
/usr/src/asterisk/bristuff-0.2.0-RC3/qozap/qozap.c:244: error: structure has no member named `eoftx'
/usr/src/asterisk/bristuff-0.2.0-RC3/qozap/qozap.c: In function `qoz_prepare_rx':
/usr/src/asterisk/bristuff-0.2.0-RC3/qozap/qozap.c:384: error: structure has no member named `bytes2receive'
/usr/src/asterisk/bristuff-0.2.0-RC3/qozap/qozap.c:387: error: structure has no member named `eofrx'
/usr/src/asterisk/bristuff-0.2.0-RC3/qozap/qozap.c:390: error: structure has no member named `eofrx'
/usr/src/asterisk/bristuff-0.2.0-RC3/qozap/qozap.c:393: error: structure has no member named `bytes2receive'
/usr/src/asterisk/bristuff-0.2.0-RC3/qozap/qozap.c:394: error: structure has no member named `eofrx'
/usr/src/asterisk/bristuff-0.2.0-RC3/qozap/qozap.c: In function `qoz_run':
/usr/src/asterisk/bristuff-0.2.0-RC3/qozap/qozap.c:411: error: structure has no member named `bytes2receive'
/usr/src/asterisk/bristuff-0.2.0-RC3/qozap/qozap.c:412: error: structure has no member named `bytes2transmit'
/usr/src/asterisk/bristuff-0.2.0-RC3/qozap/qozap.c:413: error: structure has no member named `eofrx'
/usr/src/asterisk/bristuff-0.2.0-RC3/qozap/qozap.c:414: error: structure has no member named `eoftx'
/usr/src/asterisk/bristuff-0.2.0-RC3/qozap/qozap.c: In function `ztqoz_startup':
/usr/src/asterisk/bristuff-0.2.0-RC3/qozap/qozap.c:627: error: `ZT_FLAG_BRIDCHAN' undeclared (first use in this function)
/usr/src/asterisk/bristuff-0.2.0-RC3/qozap/qozap.c:627: error: (Each undeclared identifier is reported only once
/usr/src/asterisk/bristuff-0.2.0-RC3/qozap/qozap.c:627: error: for each function it appears in.)
make[2]: *** [/usr/src/asterisk/bristuff-0.2.0-RC3/qozap/qozap.o] Error 1
make[1]: *** [_module_/usr/src/asterisk/bristuff-0.2.0-RC3/qozap] Error 2
make[1]: Leaving directory `/usr/src/linux-2.6.8-24.11'
make: *** [linux26] Error 2
****************************************************
quadBRI driver installed.
Press <Enter> to continue, or <CTRL> + <C> to abort.
****************************************************

rm -f zaphfc.o *.ko *.mod.c *.mod.o .*o.cmd *~
make -C /usr/src/linux-2.6 SUBDIRS=/usr/src/asterisk/bristuff-0.2.0-RC3/zaphfc modules
make[1]: Entering directory `/usr/src/linux-2.6.8-24.11'

WARNING: Symbol version dump /usr/src/linux-2.6.8-24.11/Module.symvers is  missing, modules will have CONFIG_MODVERSIONS disabled.

  CC [M]  /usr/src/asterisk/bristuff-0.2.0-RC3/zaphfc/zaphfc.o
/usr/src/asterisk/bristuff-0.2.0-RC3/zaphfc/zaphfc.c: In function `hfc_dtrans':
/usr/src/asterisk/bristuff-0.2.0-RC3/zaphfc/zaphfc.c:343: error: structure has no member named `bytes2transmit'
/usr/src/asterisk/bristuff-0.2.0-RC3/zaphfc/zaphfc.c:366: error: structure has no member named `bytes2transmit'
/usr/src/asterisk/bristuff-0.2.0-RC3/zaphfc/zaphfc.c:383: error: structure has no member named `eoftx'
/usr/src/asterisk/bristuff-0.2.0-RC3/zaphfc/zaphfc.c:402: error: structure has no member named `eoftx'
/usr/src/asterisk/bristuff-0.2.0-RC3/zaphfc/zaphfc.c:406: error: structure has no member named `eoftx'
/usr/src/asterisk/bristuff-0.2.0-RC3/zaphfc/zaphfc.c: In function `hfc_drec':
/usr/src/asterisk/bristuff-0.2.0-RC3/zaphfc/zaphfc.c:417: error: structure has no member named `bytes2receive'
/usr/src/asterisk/bristuff-0.2.0-RC3/zaphfc/zaphfc.c:418: error: structure has no member named `eofrx'
/usr/src/asterisk/bristuff-0.2.0-RC3/zaphfc/zaphfc.c:461: error: structure has no member named `eofrx'
/usr/src/asterisk/bristuff-0.2.0-RC3/zaphfc/zaphfc.c:502: error: structure has no member named `eofrx'
/usr/src/asterisk/bristuff-0.2.0-RC3/zaphfc/zaphfc.c:516: error: structure has no member named `bytes2receive'
/usr/src/asterisk/bristuff-0.2.0-RC3/zaphfc/zaphfc.c:522: error: structure has no member named `bytes2receive'
/usr/src/asterisk/bristuff-0.2.0-RC3/zaphfc/zaphfc.c: In function `hfc_interrupt':
/usr/src/asterisk/bristuff-0.2.0-RC3/zaphfc/zaphfc.c:661: error: structure has no member named `bytes2transmit'
/usr/src/asterisk/bristuff-0.2.0-RC3/zaphfc/zaphfc.c:675: error: structure has no member named `bytes2receive'
/usr/src/asterisk/bristuff-0.2.0-RC3/zaphfc/zaphfc.c:677: error: structure has no member named `bytes2receive'
/usr/src/asterisk/bristuff-0.2.0-RC3/zaphfc/zaphfc.c:678: error: structure has no member named `bytes2receive'
/usr/src/asterisk/bristuff-0.2.0-RC3/zaphfc/zaphfc.c:681: error: structure has no member named `eofrx'
/usr/src/asterisk/bristuff-0.2.0-RC3/zaphfc/zaphfc.c:690: error: structure has no member named `bytes2receive'
/usr/src/asterisk/bristuff-0.2.0-RC3/zaphfc/zaphfc.c: In function `zthfc_startup':
/usr/src/asterisk/bristuff-0.2.0-RC3/zaphfc/zaphfc.c:762: error: `ZT_FLAG_BRIDCHAN' undeclared (first use in this function)
/usr/src/asterisk/bristuff-0.2.0-RC3/zaphfc/zaphfc.c:762: error: (Each undeclared identifier is reported only once
/usr/src/asterisk/bristuff-0.2.0-RC3/zaphfc/zaphfc.c:762: error: for each function it appears in.)
/usr/src/asterisk/bristuff-0.2.0-RC3/zaphfc/zaphfc.c: In function `hfc_findCards':
/usr/src/asterisk/bristuff-0.2.0-RC3/zaphfc/zaphfc.c:896: warning: use of cast expressions as lvalues is deprecated
/usr/src/asterisk/bristuff-0.2.0-RC3/zaphfc/zaphfc.c:896: warning: use of cast expressions as lvalues is deprecated
make[2]: *** [/usr/src/asterisk/bristuff-0.2.0-RC3/zaphfc/zaphfc.o] Error 1
make[1]: *** [_module_/usr/src/asterisk/bristuff-0.2.0-RC3/zaphfc] Error 2
make[1]: Leaving directory `/usr/src/linux-2.6.8-24.11'
make: *** [linux26] Error 2
****************************************************
hfc-pci driver installed.
Press <Enter> to continue, or <CTRL> + <C> to abort.
****************************************************

Ich lasse dann trotzdem (trotz weiterer Fehler) erstmal alles durchlaufen.
Komme ich dann zum Punkt, den HFC-Treiber zu starten, fehlt mir im Verzeichnis /usr/src/asterisk/bristuff-0.2.0-RC3/zaphfc dann sogar der loadNT-Befehl. Bitte um Hilfe - komme überhaupt nicht weiter.
Danke im voraus.

Gruß helpman (sonst kann ich anderen helfen - aber hier bin ich absolut ahnungslos)
 
Hallo jui (und alle Anderen)!

Vielen Dank für Dein HowTo.
Leider hab ichs erst gefunden, nachdem ich (nach 1,5 Tagen probieren) bristuff-0.2.0-RC5 erfolgreich auf Suse 9.2 (Minimal-Installation) kompiliert hatte.

Naja. War das erste Mal, daß ich auf Linux kompiliert habe (bin Linux Nur-MC-Benutzer...).

Erstens hab ich nun noch zwei Anmerkungen:
- Bei den notwendigen Paketen fehlt noch "patch".
- "termcap" hatte ich nicht installiert, hat anscheinend keinen Unterschied gemacht.

Und natürlich eine FRAGE:
Nach jedem Systemstart muß ich erst einmal "make loadNT" aufrufen. Danach kann ich asterisk beliebig starten und stoppen.
Was muß ich tun, damit asterisk beim Booten direkt startet.
Mit den rcasterisk-Dateien / Runlevel-Editor hab ichs nicht hinbekommen. Auch da läßt sich der zaphfc mangels "make loadNT" nicht starten.

Es gab dazu mal einen Thread, wo aber leider nix mehr kam...

Und noch eine FRAGE:
Ich bekomme beim Kompilieren die Meldung:
Code:
... /linux_2.6.8-24.11/Module.symvers is missing. CONFIG_MODVERSIONS disabled.

Sollte mir das zu denken geben???


Ich hoffe, Ihr könnt mich von meinen Leiden erlösen!

Dago
 
Hi Dago!

Werde patch noch aufnehmen, wird für bristuff zwingend benötigt, das stimmt!

Die Fehlermeldung muss dir nicht zu denken geben, das habe ich auch. Ich selbst starte make loadNT immer manuell, ich bin auch nicht so fit auf Linux und wüsste nicht wie ich mir ein rc-script erstellen muss und das ganze noch automatisch beim booten durchlaufen lasse (make loadNT und asterisk). Vielleicht kann hier ja jemand ein HowTo beisteuern um astersik rc-fähig zu machen und beim booten direkt zu starten.

Gruß,

Jui
 
Bleibe an Punkt 4a hängen

Hallo,
ich wollte jetzt nach diesme schönen howto mein System aufsetzen, bleibe aber an Punkt 4a (Asterisk für stabileren zaphfc-Treiber patchen) hängen:

asterix:/usr/src/asterisk/bristuff-0.2.0-RC3/asterisk-1.0.3/channels # patch < chan_zap.patch-1.txt
(Stripping trailing CRs from patch.)
can't find file to patch at input line 3
Perhaps you should have used the -p or --strip option?
The text leading up to this was:
--------------------------
|--- chan_zap.c.orig 2004-12-21 23:18:49.278370008 +0100
|+++ chan_zap.c 2004-12-21 23:27:49.176293048 +0100
--------------------------
File to patch:

Da weiß ich nicht weiter??? Welches File soll ich denn da angeben? Wie ist die Syntax?
Ich habe * selbst noch nicht installiert, bin also genau nach dem howto vorgegangen, allerdings weiß ich auch nicht, an welcher Stelle ich * selbst installieren soll?
Vielen Dank schonmal für eure Antworten.
MfG
Klaus
 
Hi!

Das hier ist das Patchfile: chan_zap.patch-1.txt
Diese Files bietet smartbyte (einer der user hier) für diverse bristuff-Versionen zum Download an. Das File wird in brsituff/asterisk/channels kopiert und dann aus dem channels-Verzeichnis heraus der Befehl "patch < chan_zap.patch-1.txt" eingegeben.

Die Installation des Asterisk erfolgt mit dem Script compile.sh (install.sh ruft letztendlich nur download.sh und danach compile.sh auf). Wenn compile.sh ausgeführt wird werden die diversen Treiber kompiliert und als letztes auch Asterisk (der zu diesem Zeitpunkt bereits gepatcht sein sollte).

Alles eigentlich recht einfach wie ich meine. bristuff enthält ja den asterisk und die scripte installieren (kompilieren) ihn auch.

Du hast an sich wohl alles korrekt gemacht, ich hoffe es ist auch das korrekte Patchfile. Das File das gepatcht wird heisst zaphfc.c aber das muss nicht manuell angegeben werden, das steht in de patchfile eigentlich drin. Ich habe es gerade nochmal für RC5 getestet (dbaie wird ein anderes Patchfile von Smartbyte benötigt) und das hat auch wudnerbar funktioniert. Aber Du könntest auch den allerneusten bristuff nehmen und das alles mal ohne Scritt 4a durchlaufen lassen, da wird wohl kein Patch mehr benötigt (ich glaube neuster bristuff ist 7h oder so). Astersk ist jetzt auch als 1.0.6 verfügbar und wird sicher bald im neuen bristuff mit aufgenommen (sofern noch nicht geschehen). Ich kann das HowTo ja dann mal für die neuste Version aktualisieren.

Gruß,

Jui
Gruß,

Jui
 
@ Dago:

Nimm das Init script des SuSE asterisk rpm und pass die Pfade
an deinen selbst übersetzen asterisk an.

Make loadNT kannst du z.B. in /etc/init.d/boot.local einfügen
 
make load problem

Die Anleitung hat unter SuSE 9.2 mit bristuff-0.2.0-RC7j soweit super funktioniert. Leider bekomme ich beim make load immer die folgenden Fehler:

Code:
/usr/src/asterisk/bristuff-0.2.0-RC7j/zaphfc # make load
make -C /usr/src/linux-2.6 SUBDIRS=/usr/src/asterisk/bristuff-0.2.0-RC7j/zaphfc ZAP=-I/usr/src/asterisk/bristuff-0.2.0-RC7j/zaptel-1.0.6 modules
make[1]: Entering directory `/usr/src/linux-2.6.8-24.11'

WARNING: Symbol version dump /usr/src/linux-2.6.8-24.11/Module.symvers is  missing, modules will have CONFIG_MODVERSIONS disabled.

  CC [M]  /usr/src/asterisk/bristuff-0.2.0-RC7j/zaphfc/zaphfc.o
/usr/src/asterisk/bristuff-0.2.0-RC7j/zaphfc/zaphfc.c: In function `hfc_dtrans':
/usr/src/asterisk/bristuff-0.2.0-RC7j/zaphfc/zaphfc.c:392: error: structure has no member named `bytes2transmit'
/usr/src/asterisk/bristuff-0.2.0-RC7j/zaphfc/zaphfc.c:415: error: structure has no member named `bytes2transmit'
/usr/src/asterisk/bristuff-0.2.0-RC7j/zaphfc/zaphfc.c:432: error: structure has no member named `eoftx'
/usr/src/asterisk/bristuff-0.2.0-RC7j/zaphfc/zaphfc.c:451: error: structure has no member named `eoftx'
/usr/src/asterisk/bristuff-0.2.0-RC7j/zaphfc/zaphfc.c:455: error: structure has no member named `eoftx'
/usr/src/asterisk/bristuff-0.2.0-RC7j/zaphfc/zaphfc.c: In function `hfc_drec':
/usr/src/asterisk/bristuff-0.2.0-RC7j/zaphfc/zaphfc.c:467: error: structure has no member named `bytes2receive'
/usr/src/asterisk/bristuff-0.2.0-RC7j/zaphfc/zaphfc.c:468: error: structure has no member named `eofrx'
/usr/src/asterisk/bristuff-0.2.0-RC7j/zaphfc/zaphfc.c:502: error: structure has no member named `bytes2receive'
/usr/src/asterisk/bristuff-0.2.0-RC7j/zaphfc/zaphfc.c:507: error: structure has no member named `eofrx'
/usr/src/asterisk/bristuff-0.2.0-RC7j/zaphfc/zaphfc.c:517: error: structure has no member named `bytes2receive'
/usr/src/asterisk/bristuff-0.2.0-RC7j/zaphfc/zaphfc.c:523: error: structure has no member named `bytes2receive'
/usr/src/asterisk/bristuff-0.2.0-RC7j/zaphfc/zaphfc.c: In function `hfc_interrupt':
/usr/src/asterisk/bristuff-0.2.0-RC7j/zaphfc/zaphfc.c:702: error: structure has no member named `bytes2transmit'
/usr/src/asterisk/bristuff-0.2.0-RC7j/zaphfc/zaphfc.c:703: error: structure has no member named `maxbytes2transmit'
/usr/src/asterisk/bristuff-0.2.0-RC7j/zaphfc/zaphfc.c:717: error: structure has no member named `bytes2receive'
/usr/src/asterisk/bristuff-0.2.0-RC7j/zaphfc/zaphfc.c:720: error: structure has no member named `eofrx'
/usr/src/asterisk/bristuff-0.2.0-RC7j/zaphfc/zaphfc.c:722: error: structure has no member named `bytes2receive'
/usr/src/asterisk/bristuff-0.2.0-RC7j/zaphfc/zaphfc.c:725: error: structure has no member named `bytes2receive'
/usr/src/asterisk/bristuff-0.2.0-RC7j/zaphfc/zaphfc.c:727: error: structure has no member named `bytes2receive'
/usr/src/asterisk/bristuff-0.2.0-RC7j/zaphfc/zaphfc.c:730: error: structure has no member named `bytes2receive'
/usr/src/asterisk/bristuff-0.2.0-RC7j/zaphfc/zaphfc.c:736: error: structure has no member named `bytes2receive'
/usr/src/asterisk/bristuff-0.2.0-RC7j/zaphfc/zaphfc.c: In function `zthfc_startup':
/usr/src/asterisk/bristuff-0.2.0-RC7j/zaphfc/zaphfc.c:810: error: `ZT_FLAG_BRIDCHAN' undeclared (first use in this function)
/usr/src/asterisk/bristuff-0.2.0-RC7j/zaphfc/zaphfc.c:810: error: (Each undeclared identifier is reported only once
/usr/src/asterisk/bristuff-0.2.0-RC7j/zaphfc/zaphfc.c:810: error: for each function it appears in.)
/usr/src/asterisk/bristuff-0.2.0-RC7j/zaphfc/zaphfc.c: In function `hfc_findCards':
/usr/src/asterisk/bristuff-0.2.0-RC7j/zaphfc/zaphfc.c:987: warning: use of cast expressions as lvalues is deprecated
/usr/src/asterisk/bristuff-0.2.0-RC7j/zaphfc/zaphfc.c:987: warning: use of cast expressions as lvalues is deprecated
make[2]: *** [/usr/src/asterisk/bristuff-0.2.0-RC7j/zaphfc/zaphfc.o] Error 1
make[1]: *** [_module_/usr/src/asterisk/bristuff-0.2.0-RC7j/zaphfc] Error 2
make[1]: Leaving directory `/usr/src/linux-2.6.8-24.11'
make: *** [linux26] Error 2
Hat jemand ne Idee woran das leigen kann?

Gruß Robert
--------------
SuSE 9.2 - 2.6.8-24.11-default
Asterist 1.0.6 - Beronet BN8S0
 
Moin..

Ich nehm zum starten von Asterisk immer folgendes Script:

killall asterisk
killall asterisk
killall -9 asterisk

cd ~/bristuff-0.2.0-RC7j/zaphfc
make loadNT
asterisk -vvvvvc
make unload


MfG,
Karl
 
Holen Sie sich 3CX - völlig kostenlos!
Verbinden Sie Ihr Team und Ihre Kunden Telefonie Livechat Videokonferenzen

Gehostet oder selbst-verwaltet. Für bis zu 10 Nutzer dauerhaft kostenlos. Keine Kreditkartendetails erforderlich. Ohne Risiko testen.

3CX
Für diese E-Mail-Adresse besteht bereits ein 3CX-Konto. Sie werden zum Kundenportal weitergeleitet, wo Sie sich anmelden oder Ihr Passwort zurücksetzen können, falls Sie dieses vergessen haben.