.titleBar { margin-bottom: 5px!important; }

Chan_capi compilen unter Suse 9.2

Dieses Thema im Forum "Asterisk ISDN mit CAPI (chan_capi, chan_capi_cm)" wurde erstellt von Tucca, 21 Jan. 2005.

  1. Tucca

    Tucca Neuer User

    Registriert seit:
    14 Juli 2004
    Beiträge:
    174
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Hallo,

    ich habe Suse 9.2 installiert und das aktuelle CVS von Asterisk gezogen und installiert. Leider kann ich unter Suse 9.2 trotz
    gcc-rpm installiert den chan-capi treiber (0.3.5) nicht kompilieren.

    Ein RPM mit gcc 2.95 kann ich für Suse 9.2 auch nicht finden... :(

    Fehler:
    asterisk:/usr/src/asterisk/chan_capi-0.3.5 # make
    gcc-2.95 -pipe -Wall -Wmissing-prototypes -Wmissing-declarations -g
    -I/usr/include -D_REENTRANT -D_GNU_SOURCE -O6 -DCAPI_ES -DCAPI_GAIN
    -DCAPI_SYNC -DUNSTABLE_CVS -Wno-missing-prototypes
    -Wno-missing-declarations -DCRYPTO -c -o chan_capi.o chan_capi.c
    make: gcc-2.95: Command not found
    make: *** [chan_capi.o] Error 127

    Kann mir jemand weiterhelfen?

    Danke,
    Tucca
     
  2. Klingelding

    Klingelding Neuer User

    Registriert seit:
    6 Sep. 2004
    Beiträge:
    45
    Zustimmungen:
    0
    Punkte für Erfolge:
    6
    Wie kommt dein Makefile auf die Idee gcc-2.95 zu verwenden? Hast du schon irgend ein Patch drueber laufen lassen?
    In meinem Makefile ist "CC=gcc" gesetzt und nicht auf gcc-2.95

    Was passiert, wenn du dein Makefile so abaenderst, dass es dein installiertes gcc verwendet?
     
  3. Tucca

    Tucca Neuer User

    Registriert seit:
    14 Juli 2004
    Beiträge:
    174
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Ok, hab den Fehler mit gcc-2.95 gefunden. Der wurde durch den Patch für Chan_capi eingefügt.

    Er compliliert es aber dennoch nicht...
    Es kommen viele verschiedene fehler! :(
     
  4. rajo

    rajo Admin-Team

    Registriert seit:
    31 März 2004
    Beiträge:
    1,958
    Zustimmungen:
    0
    Punkte für Erfolge:
    36
    ...und die Fehler sind...?
     
  5. Tucca

    Tucca Neuer User

    Registriert seit:
    14 Juli 2004
    Beiträge:
    174
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Code:
    /usr/include/pthread.h:59: syntax error before "enum"
    /usr/include/pthread.h:166: parse error before "__THROW"
    /usr/include/pthread.h:169: parse error before "__THROW"
    /usr/include/pthread.h:172: parse error before "__THROW"
    /usr/include/pthread.h:176: parse error before "__THROW"
    /usr/include/pthread.h:181: parse error before "__THROW"
    /usr/include/pthread.h:187: parse error before "__THROW"
    /usr/include/pthread.h:195: parse error before "__THROW"
    /usr/include/pthread.h:198: parse error before "__THROW"
    /usr/include/pthread.h:202: parse error before "__THROW"
    /usr/include/pthread.h:206: parse error before "__THROW"
    /usr/include/pthread.h:211: parse error before "__THROW"
    /usr/include/pthread.h:217: parse error before "__THROW"
    /usr/include/pthread.h:221: parse error before "__THROW"
    /usr/include/pthread.h:226: parse error before "__THROW"
    /usr/include/pthread.h:230: parse error before "__THROW"
    /usr/include/pthread.h:235: parse error before "__THROW"
    /usr/include/pthread.h:239: parse error before "__THROW"
    /usr/include/pthread.h:243: parse error before "__THROW"
    /usr/include/pthread.h:261: parse error before "__THROW"
    /usr/include/pthread.h:266: parse error before "__THROW"
    /usr/include/pthread.h:285: parse error before "__THROW"
    /usr/include/pthread.h:290: parse error before "__THROW"
    /usr/include/pthread.h:303: parse error before "__THROW"
    /usr/include/pthread.h:309: parse error before "__THROW"
    /usr/include/pthread.h:333: parse error before "__THROW"
    /usr/include/pthread.h:336: parse error before "__THROW"
    /usr/include/pthread.h:339: parse error before "__THROW"
    /usr/include/pthread.h:342: parse error before "__THROW"
    /usr/include/pthread.h:352: parse error before "__THROW"
    /usr/include/pthread.h:359: parse error before "__THROW"
    /usr/include/pthread.h:362: parse error before "__THROW"
    /usr/include/pthread.h:367: parse error before "__THROW"
    /usr/include/pthread.h:371: parse error before "__THROW"
    /usr/include/pthread.h:392: parse error before "__THROW"
    /usr/include/pthread.h:395: parse error before "__THROW"
    /usr/include/pthread.h:398: parse error before "__THROW"
    /usr/include/pthread.h:401: parse error before "__THROW"
    /usr/include/pthread.h:406: parse error before "__THROW"
    /usr/include/pthread.h:415: parse error before "__THROW"
    /usr/include/pthread.h:420: parse error before "__THROW"
    /usr/include/pthread.h:423: parse error before "__THROW"
    /usr/include/pthread.h:428: parse error before "__THROW"
    /usr/include/pthread.h:432: parse error before "__THROW"
    :
    :
    /usr/include/setjmp.h:36: syntax error before "typedef"
    /usr/include/setjmp.h:50: parse error before "__THROW"
    /usr/include/setjmp.h:53: parse error before "__USING_NAMESPACE_STD"
    /usr/include/setjmp.h: In function `__USING_NAMESPACE_STD':
    /usr/include/setjmp.h:58: storage class specified for parameter `__sigsetjmp'
    /usr/include/setjmp.h:58: parse error before "__THROW"
    /usr/include/setjmp.h:63: storage class specified for parameter `_setjmp'
    /usr/include/setjmp.h:63: parse error before "__THROW"
    /usr/include/setjmp.h:63: declaration for parameter `_setjmp' but no such parameter
    /usr/include/setjmp.h:58: declaration for parameter `__sigsetjmp' but no such parameter
    In file included from /usr/include/asterisk/channel.h:25,
                     from chan_capi.c:16:
    /usr/include/sys/poll.h: At top level:
    /usr/include/sys/poll.h:48: syntax error before "extern"
    /usr/include/sys/poll.h:48: parse error before "nfds_t"
    In file included from /usr/include/asterisk/channel.h:37,
                     from chan_capi.c:16:
    /usr/include/asterisk/cdr.h:39: syntax error before "struct"
    In file included from /usr/include/asterisk/monitor.h:4,
                     from /usr/include/asterisk/channel.h:38,
                     from chan_capi.c:16:
    /usr/include/stdio.h:44: parse error before "__BEGIN_NAMESPACE_STD"
    /usr/include/stdio.h:46: syntax error before "typedef"
    /usr/include/stdio.h:62: syntax error before "typedef"
    In file included from /usr/include/_G_config.h:44,
                     from /usr/include/libio.h:32,
                     from /usr/include/stdio.h:72,
                     from /usr/include/asterisk/monitor.h:4,
                     from /usr/include/asterisk/channel.h:38,
                     from chan_capi.c:16:
    /usr/include/gconv.h:172: parse error before "__flexarr"
    In file included from /usr/include/libio.h:32,
                     from /usr/include/stdio.h:72,
                     from /usr/include/asterisk/monitor.h:4,
                     from /usr/include/asterisk/channel.h:38,
                     from chan_capi.c:16:
    /usr/include/_G_config.h:47: field `__cd' has incomplete type
    /usr/include/_G_config.h:50: field `__cd' has incomplete type
    /usr/include/_G_config.h:52: confused by earlier errors, bailing out
    make: *** [chan_capi.o] Fehler 1
    [root@spiderstar chan_capi-0.3.5]#
    
    Asterisk-CVS habe ich von heute installiert. Läuft auch soweit - bis auf die Chan_capi.
     
  6. rajo

    rajo Admin-Team

    Registriert seit:
    31 März 2004
    Beiträge:
    1,958
    Zustimmungen:
    0
    Punkte für Erfolge:
    36
    :shock: boah ... da scheint ja irgendwas komplett durcheinander zu sein.

    in chan_capi-0.3.5 vermute ich den Fehler jetzt mal weniger, da ich das erst gestern bei mir hier installiert hab. (zusammen mit * 1.0.4)

    Evtl. solltest Du statt dem neuesten *-cvs ein stabiles Release versuchen? (Ausser Du brauchst irgendwelche neuesten cvs-features)

    Wobei mir das hier jetzt nach irgendeinem anderen Problem ausschaut -- mir aber jetzt noch nicht sicher bin, woher es genau kommen könnte

    hhmm... ?!? --> http://www.spiderstar.de/ ?
     
  7. Tucca

    Tucca Neuer User

    Registriert seit:
    14 Juli 2004
    Beiträge:
    174
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Ich brauche DRINGEND Attented Transfer (CVS ab 06.01.2005) und Capi-Overlapped Dialing, da wir eine ISDN-Telefonanlage haben mit über 20 Durchwahlnummern... :(

    * läuft ganz gut. Sobald ich aber über Capi gehen will ist schluss - * wird beendet!
     
  8. rajo

    rajo Admin-Team

    Registriert seit:
    31 März 2004
    Beiträge:
    1,958
    Zustimmungen:
    0
    Punkte für Erfolge:
    36
  9. Tucca

    Tucca Neuer User

    Registriert seit:
    14 Juli 2004
    Beiträge:
    174
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    hm, leider bringen mich die Links nicht weiter...

    welche version von isdn4k-utils und -devel benötigt man den um Chan_capi zu compilieren?
     
  10. rajo

    rajo Admin-Team

    Registriert seit:
    31 März 2004
    Beiträge:
    1,958
    Zustimmungen:
    0
    Punkte für Erfolge:
    36
    Nja, wenn ich auf meinen Router schaue (mit Debian woody), da hab ich gar keine isdn4k-sachen (o.ä.) drauf. Aber ich weiss jetzt nicht, wie der Kram bei Suse&Co heisst.
    (Hab jetzt auch kein solches System zur Hand, um das mal eben auszuprobieren)

    Aber wie in der einen Mail schon stand: Durchaus möglich, dass der eigentliche Fehler/Fehlermeldung weit früher auftritt, allerdings aufgrund einer zu kurzen Shell-History nicht mehr angezeigt wird. Evtl. mal die Grösse der Shell-History aufdrehen und dann nochmal mit make clean all rangehen und die Stelle suchen, wo es das erste Mal rummst.

    Evtl. findet man dann genaueres.
     
  11. Tucca

    Tucca Neuer User

    Registriert seit:
    14 Juli 2004
    Beiträge:
    174
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Ich nutze gerade RedHat 8.

    Das ist der Anfang der Fehlermeldungen...
    Code:
    [root@spiderstar chan_capi-0.3.5]# make
    gcc -pipe -Wall -Wmissing-prototypes -Wmissing-declarations -g  -I/usr/include/asterisk -D_REENTRANT -D_GNU_SOURCE -O6 -march=i686  -DCAPI_ES -DCAPI_GAIN -DCAPI_SYNC -DUNSTABLE_CVS -Wno-missing-prototypes -Wno-missing-declarations -DCRYPTO   -c -o chan_capi.o chan_capi.c
    In file included from /usr/include/time.h:38,
                     from /usr/include/pthread.h:21,
                     from /usr/include/asterisk/lock.h:17,
                     from chan_capi.c:14:
    /usr/lib/gcc-lib/i386-redhat-linux/3.2/include/stddef.h:201: syntax error before "typedef"
    In file included from /usr/include/pthread.h:21,
                     from /usr/include/asterisk/lock.h:17,
                     from chan_capi.c:14:
    /usr/include/time.h:60: syntax error before "typedef"
    /usr/include/time.h:74: parse error before "__BEGIN_NAMESPACE_STD"
    /usr/include/time.h:76: syntax error before "typedef"
    /usr/include/time.h:127: parse error before "__BEGIN_NAMESPACE_STD"
    /usr/include/time.h:129: syntax error before "struct"
    /usr/include/time.h:176: parse error before "__BEGIN_NAMESPACE_STD"
    /usr/include/time.h:179: syntax error before "extern"
    /usr/include/time.h:179: parse error before "__THROW"
    /usr/include/time.h:182: parse error before "__THROW"
    /usr/include/time.h:186: parse error before "__THROW"
    /usr/include/time.h:189: parse error before "__THROW"
    /usr/include/time.h:197: parse error before "__THROW"
    /usr/include/time.h:224: parse error before "__BEGIN_NAMESPACE_STD"
    /usr/include/time.h:227: syntax error before "extern"
    /usr/include/time.h:227: parse error before "__THROW"
    /usr/include/time.h:231: parse error before "__THROW"
    /usr/include/time.h:246: parse error before "__BEGIN_NAMESPACE_STD"
    /usr/include/time.h:249: syntax error before "extern"
    /usr/include/time.h:249: parse error before "__THROW"
    /usr/include/time.h:252: parse error before "__THROW"
    /usr/include/time.h:270: syntax error before "extern"
    
     
  12. rajo

    rajo Admin-Team

    Registriert seit:
    31 März 2004
    Beiträge:
    1,958
    Zustimmungen:
    0
    Punkte für Erfolge:
    36
    genau so schlimm ;)

    wenn man mal wieder google befrägt:
    http://www.google.com/search?hl=en&lr=&q=chan_capi.c:++syntax+error+before+"typedef"&btnG=Search

    dann läuft das
    a) auf Inkompatibilitäten zwischen chan_capi und dem neuesten *-cvs oder
    b) fehlenden isdn4k-utils-devel raus

    falls b) nicht hilft, kannst Du ja mit dem cvs mal ne Woche zurückgehen oder ein anderes was halt die gewünschten Features enthält, aber nicht unbedingt brandneu ist.
     
  13. Tucca

    Tucca Neuer User

    Registriert seit:
    14 Juli 2004
    Beiträge:
    174
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    ok, aber wie gehe ich eine Woche im CVS zurück?
    Sorry für die Anfänger-Frage.
     
  14. rajo

    rajo Admin-Team

    Registriert seit:
    31 März 2004
    Beiträge:
    1,958
    Zustimmungen:
    0
    Punkte für Erfolge:
    36
    cvs up -D "datum"
    Dabei kann man dort sowas wie "1 week ago" eingeben, oder auch "12 Jan 2005 12:05"

    "man cvs" im zweifelsfall ;)
     
  15. Tucca

    Tucca Neuer User

    Registriert seit:
    14 Juli 2004
    Beiträge:
    174
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    ok, danke.

    ich habe es jetzt mal mit dem *-1.0.4 stable und chan_capi 0.3.5 probiert.
    Liess sich auch problemlos kompilieren und installieren.

    nun kommt aber beim Start von * zu dem Fehler:
    [app_capiCD.so]Jan 23 14:17:24 WARNING[1027]: loader.c:258 ast_load_resource: /usr/lib/asterisk/modules/app_capiCD.so: undefined symbol: ast_capi_ApplID
    Jan 23 14:17:24 WARNING[1027]: loader.c:440 load_modules: Loading module app_capiCD.so failed!
    [root@spiderstar root]# Warning, flexibel rate not heavily tested!
    Ouch ... error while writing audio data: : Broken pipe

    Was ist das?
     
  16. rajo

    rajo Admin-Team

    Registriert seit:
    31 März 2004
    Beiträge:
    1,958
    Zustimmungen:
    0
    Punkte für Erfolge:
    36
    ...also wenn ich nicht gestern grade die gleiche kombi (1.0.4 plus 0.3.5) hier installiert hätte würde ich ja mal sagen, da iss was kaputt ;)

    bei mir startet es problemlos und app_capiCD.so wird auch brav geladen

    kann es sein, dass evtl. deine modules.conf jetzt noch ein wenig verwurschtelt ist? zeig die mal her.
     
  17. Tucca

    Tucca Neuer User

    Registriert seit:
    14 Juli 2004
    Beiträge:
    174
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Die modules.conf:
    Code:
    [modules]
    autoload=yes
    ;
    ; If you want, load the GTK console right away.
    ; Don't load the KDE console since
    ; it's not as sophisticated right now.
    ;
    noload => pbx_gtkconsole.so
    ;load => pbx_gtkconsole.so
    noload => pbx_kdeconsole.so
    ;
    ; Intercom application is obsoleted by
    ; chan_oss.  Don't load it.
    ;
    noload => app_intercom.so
    ;
    ; Explicitly load the chan_modem.so early on to be sure
    ; it loads before any of the chan_modem_* 's afte rit
    ;
    load => chan_modem.so
    load => res_musiconhold.so
    ;
    ; Load either OSS or ALSA, not both
    ; By default, load OSS only (automatically) and do not load ALSA
    ;
    noload => chan_alsa.so
    ;noload => chan_oss.so
    ;
    ; Module names listed in "global" section will have symbols globally
    ; exported to modules loaded after them.
    ;
    [global]
    chan_modem.so=yes
    
     
  18. rajo

    rajo Admin-Team

    Registriert seit:
    31 März 2004
    Beiträge:
    1,958
    Zustimmungen:
    0
    Punkte für Erfolge:
    36
    hmm.. sag asterisk doch einfach mal, dass er capi auch laden soll... (siehe auch readme aus chan_capi ....)
    Code:
    [modules]
    autoload=yes
    noload => pbx_gtkconsole.so
    noload => pbx_kdeconsole.so
    noload => app_intercom.so
    
    noload => chan_h323.so
    noload => chan_modem.so
    noload => chan_modem_aopen.so
    noload => chan_modem_bestdata.so
    noload => chan_modem_i4l.so
    
    noload => chan_alsa.so
    noload => chan_oss.so
    
    load => chan_capi.so 
    load => res_musiconhold.so
    
    [global]
    chan_modem.so=no
    chan_capi.so=yes
    
    btw: bitte nutz doch auch mal die code-tags um längere listings besser lesbar zu machen
     
  19. Tucca

    Tucca Neuer User

    Registriert seit:
    14 Juli 2004
    Beiträge:
    174
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    sorry, hab die falsche modules.conf gepostet.

    Chan_capi wird geladen. Er lädt mir nun aber auch die chan_zap.so die ich nicht benötige.

    Fehler:
    Code:
     [app_zapscan.so]Jan 23 15:42:27 WARNING[1131]: loader.c:309 ast_load_resource: /usr/lib/asterisk/modules/app_zapscan.so: undefined symbol: ast_channel_walk
    Jan 23 15:42:27 WARNING[1131]: loader.c:500 load_modules: Loading module app_zapscan.so failed!
    Ouch ... error while writing audio data: : Broken pipe
    [root@spiderstar asterisk]# Could not resync/reset buffers: No such process
    Skipped ID3 Tag!
    
    Ich brauche doch kein ZAP... Capi läuft wohl nun durch.

    Hab auch
    noload => chan_zap.so
    eingebaut in der modules.conf
     
  20. rajo

    rajo Admin-Team

    Registriert seit:
    31 März 2004
    Beiträge:
    1,958
    Zustimmungen:
    0
    Punkte für Erfolge:
    36
    Dann lade es doch einfach nicht :)
    noload => chan_zap.so / chan_zap.so = no

    ----
    edit:
    ...okay... das board hier ist wohl nicht dafür ausgelegt, dass man sich im sekundentakt antworten gibt :D

    aber mach mal noch unter den globals das chan_zap.so=no rein.