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

Asterisk mit mISDN und chan_misdn

Dieses Thema im Forum "Asterisk ISDN mit mISDN" wurde erstellt von kperas, 8 März 2005.

  1. kperas

    kperas Neuer User

    Registriert seit:
    17 Jan. 2005
    Beiträge:
    156
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Hallo Forum,
    ich hab hier ein Probelm. Ich hab die Beronet BN4S0 Karte in meinem * Rechner und möchte die mISDN Treiber laut der Beronet Installationsanleitung installieren, bleibe aber beim kompilieren von chan_misdn hängen mit folgenden Fehlermeldungen:
    Code:
    asterisk:/usr/src/chan_misdn-beta-0.0.3-rc4 # make install
    cc -ggdb -Wall -D_GNU_SOURCE -Wno-missing-prototypes -Wno-missing-declarations -fPIC -I/usr/src/asterisk/include -DAST_CONFIG_DIR=\"/etc/asterisk/\" -I/usr/src/mISDNuser/include -I/usr/src/linux-2.6/include -I/usr/src/mISDNuser/i4lnet/ -Wall   -c -o chan_misdn.o chan_misdn.c
    chan_misdn.c:30:34: asterisk/channel_pvt.h: No such file or directory
    chan_misdn.c: In function `misdn_call':
    chan_misdn.c:664: error: dereferencing pointer to incomplete type
    chan_misdn.c: In function `misdn_answer':
    chan_misdn.c:695: error: dereferencing pointer to incomplete type
    chan_misdn.c: In function `misdn_digit':
    chan_misdn.c:724: error: dereferencing pointer to incomplete type
    chan_misdn.c: In function `misdn_fixup':
    chan_misdn.c:767: error: dereferencing pointer to incomplete type
    chan_misdn.c:768: error: dereferencing pointer to incomplete type
    chan_misdn.c: In function `misdn_soption':
    chan_misdn.c:782: error: dereferencing pointer to incomplete type
    chan_misdn.c: In function `misdn_qoption':
    chan_misdn.c:790: error: dereferencing pointer to incomplete type
    chan_misdn.c: In function `misdn_transfer':
    chan_misdn.c:798: error: dereferencing pointer to incomplete type
    chan_misdn.c: In function `misdn_indication':
    chan_misdn.c:808: error: dereferencing pointer to incomplete type
    chan_misdn.c: In function `misdn_hangup':
    chan_misdn.c:916: error: dereferencing pointer to incomplete type
    chan_misdn.c:919: error: dereferencing pointer to incomplete type
    chan_misdn.c:925: error: dereferencing pointer to incomplete type
    chan_misdn.c: In function `misdn_read':
    chan_misdn.c:1022: error: dereferencing pointer to incomplete type
    chan_misdn.c: In function `misdn_write':
    chan_misdn.c:1037: error: dereferencing pointer to incomplete type
    chan_misdn.c: In function `misdn_new':
    chan_misdn.c:1114: error: dereferencing pointer to incomplete type
    chan_misdn.c:1115: error: dereferencing pointer to incomplete type
    chan_misdn.c:1125: error: dereferencing pointer to incomplete type
    chan_misdn.c:1128: error: dereferencing pointer to incomplete type
    chan_misdn.c:1129: error: dereferencing pointer to incomplete type
    chan_misdn.c:1130: error: dereferencing pointer to incomplete type
    chan_misdn.c:1131: error: dereferencing pointer to incomplete type
    chan_misdn.c:1132: error: dereferencing pointer to incomplete type
    chan_misdn.c:1133: error: dereferencing pointer to incomplete type
    chan_misdn.c:1137: error: dereferencing pointer to incomplete type
    chan_misdn.c:1138: error: dereferencing pointer to incomplete type
    chan_misdn.c:1139: error: dereferencing pointer to incomplete type
    chan_misdn.c:1140: error: dereferencing pointer to incomplete type
    chan_misdn.c:1143: error: dereferencing pointer to incomplete type
    chan_misdn.c: In function `release_chan':
    chan_misdn.c:1387: error: dereferencing pointer to incomplete type
    chan_misdn.c: In function `load_module':
    chan_misdn.c:2342: warning: passing arg 1 of `ast_channel_register' from incompatible pointer type
    chan_misdn.c:2342: error: too many arguments to function `ast_channel_register'
    chan_misdn.c: In function `unload_module':
    chan_misdn.c:2381: warning: passing arg 1 of `ast_channel_unregister' from incompatible pointer type
    make: *** [chan_misdn.o] Error 1
    asterisk:/usr/src/chan_misdn-beta-0.0.3-rc4 # 
    
    Anscheinend findet er channel_pvt.h nicht in asterisk/

    Aber warum?

    Hier noch meine zaptel.con:
    Code:
    bchan=1,2
    dchan=3
    bchan=4,5
    dchan=6
    bchan=7,8
    dchan=9
    bchan=10,11
    dchan=12
    
    span=1,1,3,ccs,ami
    span=2,1,3,ccs,ami
    span=3,1,3,ccs,ami
    span=4,1,3,ccs,ami 
    
    loadzone=de
    defaultzone=nl
    
    und meine zapata.conf:
    Code:
    ; Zapata telephony interface
    ;
    ; Configuration file
    
    [trunkgroups]
    ;
    ; Trunk groups are used for NFAS or GR-303 connections.
    ;
    ; Group: Defines a trunk group.  
    ;        group => <trunkgroup>,<dchannel>[,<backup1>...]
    ;
    ;        trunkgroup  is the numerical trunk group to create
    ;        dchannel    is the zap channel which will have the 
    ;                    d-channel for the trunk.
    ;        backup1     is an optional list of backup d-channels.
    ;
    ;trunkgroup => 1,24,48
    ;
    ; Spanmap: Associates a span with a trunk group
    ;        spanmap => <zapspan>,<trunkgroup>[,<logicalspan>]
    ;
    ;        zapspan     is the zap span number to associate
    ;        trunkgroup  is the trunkgroup (specified above) for the mapping
    ;        logicalspan is the logical span number within the trunk group to use.
    ;                    if unspecified, no logical span number is used.
    ;
    ;spanmap => 1,1,1
    ;spanmap => 2,1,2
    ;spanmap => 3,1,3
    ;spanmap => 4,1,4
    
    [channels]
    ;
    ; Default language
    ;
    ;language=en
    ;
    ; Default context
    ;
    context=default
    ;
    ; Switchtype:  Only used for PRI.
    ;
    ; national:       National ISDN 2 (default)
    ; dms100:         Nortel DMS100
    ; 4ess:           AT&T 4ESS
    ; 5ess:           Lucent 5ESS
    ; euroisdn:       EuroISDN
    ; ni1:            Old National ISDN 1
    ;
    switchtype=national
    ;
    ; Some switches (AT&T especially) require network specific facility IE
    ; supported values are currently 'none', 'sdn', 'megacom', 'accunet'
    ;
    ;nsf=none
    ;
    ; PRI Dialplan:  Only RARELY used for PRI.
    ;
    ; unknown:        Unknown
    ; private:        Private ISDN
    ; local:          Local ISDN
    ; national:       National ISDN
    ; international:  International ISDN
    ;
    ;pridialplan=national
    ;
    ; PRI Local Dialplan:  Only RARELY used for PRI (sets the calling number's numbering plan)
    ;
    ; unknown:        Unknown
    ; private:        Private ISDN
    ; local:          Local ISDN
    ; national:       National ISDN
    ; international:  International ISDN
    ;
    ;prilocaldialplan=national
    ;
    ; PRI callerid prefixes based on the given TON/NPI (dialplan)
    ; This is especially needed for euroisdn E1-PRIs
    ; 
    ; sample 1 for Germany 
    ;internationalprefix = 00
    ;nationalprefix = 0
    ;localprefix = 0711
    ;privateprefix = 07115678
    ;unknownprefix = 
    ;
    ; sample 2 for Germany 
    ;internationalprefix = +
    ;nationalprefix = +49
    ;localprefix = +49711
    ;privateprefix = +497115678
    ;unknownprefix = 
    ;
    ; PRI resetinterval: sets the time in seconds between restart of unused channels, defaults to 3600
    ; minimum 60 seconds
    ; some PBXs don't like channel restarts. so set the interval to a very long interval e.g. 100000000
    ;
    ;resetinterval = 3600 
    ;
    ; Overlap dialing mode (sending overlap digits)
    ;
    ;overlapdial=yes
    ;
    ; PRI Out of band indications.
    ; Enable this to report Busy and Congestion on a PRI using out-of-band
    ; notification. Inband indication, as used by Asterisk doesn't seem to work
    ; with all telcos.
    ; 
    ; outofband:      Signal Busy/Congestion out of band with RELEASE/DISCONNECT
    ; inband:         Signal Busy/Congestion using in-band tones
    ;
    ; priindication = outofband
    ;
    ; ISDN Timers
    ; All of the ISDN timers and counters that are used are configurable.  Specify 
    ; the timer name, and its value (in ms for timers)
    ;
    ; pritimer => t200,1000
    ; pritimer => t313,4000
    ;
    ;
    ; Signalling method (default is fxs).  Valid values:
    ; em:      E & M
    ; em_w:    E & M Wink
    ; featd:   Feature Group D (The fake, Adtran style, DTMF)
    ; featdmf: Feature Group D (The real thing, MF (domestic, US))
    ; featb:   Feature Group B (MF (domestic, US))
    ; fxs_ls:  FXS (Loop Start)
    ; fxs_gs:  FXS (Ground Start)
    ; fxs_ks:  FXS (Kewl Start)
    ; fxo_ls:  FXO (Loop Start)
    ; fxo_gs:  FXO (Ground Start)
    ; fxo_ks:  FXO (Kewl Start)
    ; pri_cpe: PRI signalling, CPE side
    ; pri_net: PRI signalling, Network side
    ; gr303fxoks_net: GR-303 Signalling, FXO Loopstart, Network side
    ; gr303fxsks_cpe: GR-303 Signalling, FXS Loopstart, CPE side
    ; sf:         SF (Inband Tone) Signalling
    ; sf_w:       SF Wink
    ; sf_featd:   SF Feature Group D (The fake, Adtran style, DTMF)
    ; sf_featdmf: SF Feature Group D (The real thing, MF (domestic, US))
    ; sf_featb:   SF Feature Group B (MF (domestic, US))
    ; The following are used for Radio interfaces:
    ; fxs_rx:  Receive audio/COR on an FXS kewlstart interface (FXO at the channel bank)
    ; fxs_tx:  Transmit audio/PTT on an FXS loopstart interface (FXO at the channel bank)
    ; fxo_rx:  Receive audio/COR on an FXO loopstart interface (FXS at the channel bank)
    ; fxo_tx:  Transmit audio/PTT on an FXO groundstart interface (FXS at the channel bank)
    ; em_rx:   Receive audio/COR on an E&M interface (1-way)
    ; em_tx:   Transmit audio/PTT on an E&M interface (1-way)
    ; em_txrx: Receive audio/COR AND Transmit audio/PTT on an E&M interface (2-way)
    ; em_rxtx: same as em_txrx (for our dyslexic friends)
    ; sf_rx:   Receive audio/COR on an SF interface (1-way)
    ; sf_tx:   Transmit audio/PTT on an SF interface (1-way)
    ; sf_txrx: Receive audio/COR AND Transmit audio/PTT on an SF interface (2-way)
    ; sf_rxtx: same as sf_txrx (for our dyslexic friends)
    ;
    signalling=fxo_ls
    ;
    ; A variety of timing parameters can be specified as well
    ; Including:
    ;    prewink:     Pre-wink time (default 50ms)
    ;    preflash:    Pre-flash time (default 50ms)
    ;    wink:        Wink time (default 150ms)
    ;    flash:       Flash time (default 750ms)
    ;    start:       Start time (default 1500ms)
    ;    rxwink:      Receiver wink time (default 300ms)
    ;    rxflash:     Receiver flashtime (default 1250ms)
    ;    debounce:    Debounce timing (default 600ms)
    ;    emdigitwait: Time to wait for DID digits on E&M links (default 250ms) (Increase to 500
    ;                 or so if you are not getting all DID digits on your E&M link)
    ;
    rxwink=300              ; Atlas seems to use long (250ms) winks
    ;
    ; Whether or not to do distinctive ring detection on FXO lines
    ;
    ;usedistinctiveringdetection=yes
    
    ;
    ; Whether or not to use caller ID
    ;
    usecallerid=yes
    ;
    ; Type of caller ID signalling in use
    ; bell = bell202 as used in US, v23 = v23 as used in the UK, dtmf = DTMF as used in Denmark, Sweden and Netherlands
    ;
    ;cidsignalling=bell
    ;
    ; What signals the start of caller ID
    ; ring = a ring signals the start, polarity = polarity reversal signals the start
    ;
    ;cidstart=ring
    ;
    ; Whether or not to hide outgoing caller ID (Override with *67 or *82)
    ;
    hidecallerid=no
    ;
    ; Whether or not to enable call waiting on FXO lines
    ;
    callwaiting=yes
    ;
    ; Whether or not restrict outgoing caller ID (will be sent as ANI only, not available for the user)
    ; Mostly use with FXS ports
    ;
    ;restrictcid=no
    ;
    ; Whether or not use the caller ID presentation for the outgoing call that the calling switch is sending
    ;
    usecallingpres=yes
    ;
    ; Some countries (UK) have ring tones with different ring tones (ring-ring),
    ; which means the callerid needs to be set later on, and not just after
    ; the first ring, as per the default. 
    ;
    ;sendcalleridafter=1
    ;
    ;
    ; Support Caller*ID on Call Waiting
    ;
    callwaitingcallerid=yes
    ;
    ; Support three-way calling
    ;
    threewaycalling=yes
    ;
    ; Support flash-hook call transfer (requires three way calling)
    ; Also enables call parking (overrides the 'canpark' parameter)
    ;
    transfer=yes
    ;
    ; Allow call parking
    ; ('canpark=no' is overridden by 'transfer=yes')
    ;
    canpark=yes
    ;
    ; Support call forward variable
    ;
    cancallforward=yes
    ;
    ; Whether or not to support Call Return (*69)
    ;
    callreturn=yes
    ;
    ; Stutter dialtone support: If a mailbox is specified without a voicemail 
    ; context, then when voicemail is received in a mailbox in the default 
    ; voicemail context in voicemail.conf, taking the phone off hook will 
    ; cause a stutter dialtone instead of a normal one. 
    ;
    ; If a mailbox is specified *with* a voicemail context, the same will 
    ; result if voicemail recieved in mailbox in the specified voicemail 
    ; context
    ;
    ; for default voicemail context, the example below is fine:
    ;
    ;mailbox=1234
    ;
    ; for any other voicemail context, the following will produce the 
    ; stutter tone:
    ;
    ;mailbox=1234@context 
    ;
    ; Enable echo cancellation 
    ; Use either "yes", "no", or a power of two from 32 to 256 if you wish
    ; to actually set the number of taps of cancellation.
    ;
    echocancel=yes
    ;
    ; Generally, it is not necessary (and in fact undesirable) to echo cancel
    ; when the circuit path is entirely TDM.  You may, however, reverse this
    ; behavior by enabling the echo cancel during pure TDM bridging below.
    ;
    echocancelwhenbridged=yes
    ;
    ; In some cases, the echo canceller doesn't train quickly enough and there
    ; is echo at the beginning of the call.  Enabling echo training will cause
    ; asterisk to briefly mute the channel, send an impulse, and use the impulse
    ; response to pre-train the echo canceller so it can start out with a much
    ; closer idea of the actual echo.  Value may be "yes", "no", or a number of
    ; milliseconds to delay before training (default = 400)
    ;
    ;echotraining=yes
    ;echotraining=800
    ;
    ; If you are having trouble with DTMF detection, you can relax the
    ; DTMF detection parameters.  Relaxing them may make the DTMF detector
    ; more likely to have "talkoff" where DTMF is detected when it
    ; shouldn't be.
    ;
    ;relaxdtmf=yes
    ;
    ; You may also set the default receive and transmit gains (in dB)
    ;
    rxgain=0.0
    txgain=0.0
    ;
    ; Logical groups can be assigned to allow outgoing rollover.  Groups
    ; range from 0 to 63, and multiple groups can be specified.
    ;
    group=1
    ;
    ; Ring groups (a.k.a. call groups) and pickup groups.  If a phone is ringing
    ; and it is a member of a group which is one of your pickup groups, then
    ; you can answer it by picking up and dialing *8#.  For simple offices, just
    ; make these both the same
    ;
    callgroup=1
    pickupgroup=1
    
    ;
    ; Specify whether the channel should be answered immediately or
    ; if the simple switch should provide dialtone, read digits, etc.
    ;
    immediate=no
    ;
    ; CallerID can be set to "asreceived" or a specific number
    ; if you want to override it.  Note that "asreceived" only
    ; applies to trunk interfaces.
    ;
    ;callerid=2564286000
    ;
    ; AMA flags affects the recording of Call Detail Records.  If specified
    ; it may be 'default', 'omit', 'billing', or 'documentation'.
    ;
    ;amaflags=default
    ;
    ; Channels may be associated with an account code to ease
    ; billing
    ;
    ;accountcode=lss0101
    ;
    ; ADSI (Analog Display Services Interface) can be enabled on a per-channel
    ; basis if you have (or may have) ADSI compatible CPE equipment
    ;
    ;adsi=yes
    ;
    ; On trunk interfaces (FXS) and E&M interfaces (E&M, Wink, Feature Group D
    ; etc, it can be useful to perform busy detection either in an effort to 
    ; detect hangup or for detecting busies
    ;
    ;busydetect=yes
    ;
    ; If busydetect is enabled, is also possible to specify how many
    ; busy tones to wait before hanging up. The default is 4, but
    ; better results can be achieved if set to 6 or even 8. Mind that
    ; higher the number, more time is needed to hangup a channel, but
    ; lower is probability to get random hangups
    ;
    ;busycount=4
    ;
    ; Use a polarity reversal to mark when a outgoing call is answered by the
    ; remote party.
    ;
    ;answeronpolarityswitch=yes
    ;
    ; In some countries, a polarity reversal is used to signal the disconnect
    ; of a phone line.  If the hanguponpolarityswitch option is selected, the
    ; call will be considered "hung up" on a polarity reversal
    ;
    ;hanguponpolarityswitch=yes
    ;
    ; On trunk interfaces (FXS) it can be useful to attempt to follow the progress
    ; of a call through RINGING, BUSY, and ANSWERING.   If turned on, call
    ; progress attempts to determine answer, busy, and ringing on phone lines.
    ; This feature is HIGHLY EXPERIMENTAL and can easily detect false answers,
    ; so don't count on it being very accurate.  
    ;
    ; Few zones are supported at the time of this writing, but may
    ; be selected with "progzone"
    ;
    ; This feature can also easily detect false hangups. The symptoms of this 
    ; is being disconnected in the middle of a call for no reason.
    ;
    ;callprogress=yes
    ;progzone=us
    ;
    ; For FXO (FXS signalled) devices, whether to use pulse dial instead of DTMF
    ;
    ;pulsedial=yes
    ;
    ; For fax detection, uncomment one of the following lines.  The default is *OFF*
    ;
    ;faxdetect=both
    ;faxdetect=incoming
    ;faxdetect=outgoing
    ;faxdetect=no
    ;
    ; Select which class of music to use for music on hold.  If not specified
    ; then the default will be used.
    ;
    ;musiconhold=default
    ;
    ; PRI channels can have an idle extension and a minunused number.  So long
    ; as at least "minunused" channels are idle, chan_zap will try to call
    ; "idledial" on them, and then dump them into the PBX in the "idleext"
    ; extension (which is of the form exten@context).  When channels are needed
    ; the "idle" calls are disconnected (so long as there are at least "minidle"
    ; calls still running, of course) to make more channels available.  The
    ; primary use of this is to create a dynamic service, where idle channels
    ; are bundled through multilink PPP, thus more efficiently utilizing
    ; combined voice/data services than conventional fixed mappings/muxings.
    ;
    ;idledial=6999
    ;idleext=6999@dialout
    ;minunused=2
    ;minidle=1
    ;
    ; Configure jitter buffers in zapata (each one is 20ms, default is 4)
    ;
    ;jitterbuffers=4
    ;
    ; You can define your own custom ring cadences here.  You can define up to
    ; 8 pairs.  If the silence is negative, it indicates where the callerid
    ; spill is to be placed.  Also, if you define any custom cadences, the
    ; default cadences will be turned off.
    ;
    ; Syntax is:  cadence=ring,silence[,ring,silence[...]]
    ;
    ; These are the default cadences:
    ;
    ;cadence=125,125,2000,-4000
    ;cadence=250,250,500,1000,250,250,500,-4000
    ;cadence=125,125,125,125,125,-4000
    ;cadence=1000,500,2500,-5000
    ;
    ; Each channel consists of the channel number or range.  It
    ; inherits the parameters that were specified above its declaration
    ;
    ; For GR-303, CRV's are created like channels except they must start
    ; with the trunk group followed by a colon, e.g.: 
    ;
    ; crv => 1:1
    ; crv => 2:1-2,5-8
    ;
    ;
    ;callerid="Green Phone"<(256) 428-6121>
    ;channel => 1
    ;callerid="Black Phone"<(256) 428-6122>
    ;channel => 2
    ;callerid="CallerID Phone" <(256) 428-6123>
    ;callerid="CallerID Phone" <(630) 372-1564>
    ;callerid="CallerID Phone" <(256) 704-4666>
    ;channel => 3
    ;callerid="Pac Tel Phone" <(256) 428-6124>
    ;channel => 4
    ;callerid="Uniden Dead" <(256) 428-6125>
    ;channel => 5
    ;callerid="Cortelco 2500" <(256) 428-6126>
    ;channel => 6
    ;callerid="Main TA 750" <(256) 428-6127>
    ;channel => 44
    ;
    ; For example, maybe we have some other channels
    ; which start out in a different context and use
    ; E & M signalling instead.
    ;
    ;context=remote
    ;sigalling=em
    ;channel => 15
    ;channel => 16
    
    ;signalling=em_w
    ;
    ; All those in group 0 I'll use for outgoing calls
    ;
    ; Strip most significant digit (9) before sending
    ;
    ;stripmsd=1
    ;callerid=asreceived
    ;group=0
    ;signalling=fxs_ls
    ;channel => 45
    
    ;signalling=fxo_ls
    ;group=1
    ;callerid="Joe Schmoe" <(256) 428-6131>
    ;channel => 25
    ;callerid="Megan May" <(256) 428-6132>
    ;channel => 26
    ;callerid="Suzy Queue" <(256) 428-6233>
    ;channel => 27
    ;callerid="Larry Moe" <(256) 428-6234>
    ;channel => 28
    ;
    ; Sample PRI (CPE) config:  Specify the switchtype, the signalling as
    ; either pri_cpe or pri_net for CPE or Network termination, and generally
    ; you will want to create a single "group" for all channels of the PRI.
    ;
    ; switchtype = national
    ; signalling = pri_cpe
    ; group = 2
    ; channel => 1-23
    
    ;
    ;  Used for distintive ring support for x100p.
    ;  You can see the dringX patterns is to set any one of the dringXcontext fields
    ;  and they will be printed on the console when an inbound call comes in.
    ;
    ;dring1=95,0,0 
    ;dring1context=internal1 
    ;dring2=325,95,0 
    ;dring2context=internal2 
    ; If no pattern is matched here is where we go.
    ;context=default
    ;channel => 1 
    
    Ich hab auch folgende Befehle ausgeführt:

    modprobe hfcmulti type=0x04 layermask= 0xf,0xf,0x3,0x3 protocol=0x22,0x2,0x12,0x12 <ENTER>
    (Weil ich den ersten Port im P2P Modus betreiben möchte, den zweiten im TE Modus und die beiden letzten im NT-Modus)

    und

    modprobe mISDN_dsp <ENTER>

    Ich finde bis jetzt keine Postings, welche ein ähnliches Probelm hätten. Kann mir jemand sagen, was ich falsch mache? Ich wäre wirklich sehr dankbar.

    Mit freundlichen Grüßen
    Klaus
     
  2. WildThing

    WildThing Neuer User

    Registriert seit:
    22 Okt. 2004
    Beiträge:
    8
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Hallo,
    die Verzeichnisse in der makefile müssen auf deine gegebenheiten angepasst werden.

    z.B. ASTERISKSRC, MISDNUSER etc.
     
  3. kperas

    kperas Neuer User

    Registriert seit:
    17 Jan. 2005
    Beiträge:
    156
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Hallo, Danke für die ANtowrt!!! Hier mein Makefile. Ich seh nicht, was daran nicht stimmt:

    Code:
    asterisk:/usr/src/chan_misdn-beta-0.0.3-rc4 # cat Makefile 
    #debugscript
    DEBUGSCRIPT=sed -e "s/{/{\nchan_misdn_log(\"SEGFAULT_DEBUG: %d\\\n\",__LINE__)/g"
    UNDEBUGSCRIPT=sed -e "s/{/{\nchan_misdn_log(\"SEGFAULT_DEBUG: %d\\\n\",__LINE__)/g"
    
    #
    # The following line tells the makefile where to install the module, 
    # if necessary, please edit it 
    #
    INSTALL_MODPATH=/usr/lib/asterisk/modules
    
    #
    # The following line tells the makefile where to find the asterisk src, so 
    # please edit this one if necessary 
    #
    ASTERISKSRC=/usr/src/asterisk
    
    #
    # The following line tells the makefile where to put in the configfile 
    # of this module
    #
    AST_CONFIG_DIR=/etc/asterisk/
    
    #
    # The Includes are Set appropriatly
    #
    ASTERISKINC=$(ASTERISKSRC)/include
    
    
    #
    # mISDNuser PATHS
    #
    MISDNUSER=/usr/src/mISDNuser
    MISDNUSERINC=$(MISDNUSER)/include
    MISDNUSERLIB=$(MISDNUSER)/lib
    
    #
    # mISDNuser Version
    #
    # If you dont use the Jolly mISDNuser version above 2.7 then comment this
    #
    #CFLAGS+=-DMISDNUSER_JOLLY
    
    
    #
    # ASTERISK Version
    # If you are using a asterisk version above from stable (v1-0)
    # then comment the following line out (good luck)
    #
    #CFLAGS+=-DASTERISK_STABLE
    
    
    LINUXROOT=/usr/src/linux-2.6
    
    
    #
    # Linux Includes (must be patched with mISDN!)
    #
    LINUXINC=$(LINUXROOT)/include
    
    CFLAGS+=-ggdb -Wall -D_GNU_SOURCE
    CFLAGS+=-Wno-missing-prototypes -Wno-missing-declarations
    
    all: chan_misdn.so
    
    CFLAGS+=-fPIC -I$(ASTERISKINC) -DAST_CONFIG_DIR=\"$(AST_CONFIG_DIR)\" -I$(MISDNUSERINC) -I$(LINUXINC) -I$(MISDNUSER)/i4lnet/ -Wall
    ADDOBJS+=$(MISDNUSER)/i4lnet/libisdnnet.a $(MISDNUSER)/lib/libmISDN.a
    
    chan_misdn.so: chan_misdn.o te_lib.o $(ADDOBJS)
            $(CC) -shared -Xlinker -x -o $@ te_lib.o chan_misdn.o $(ADDOBJS) 
    
    testphone:  testphone.c
            $(CC) -I$(MISDNUSERINC) -I$(MISDNUSER)/i4lnet/ -I$(LINUXINC)  testphone.c $(MISDNUSERLIB)/libmISDN.a -o testphone
    
    install: chan_misdn.so
            install -m 644 chan_misdn.so $(INSTALL_MODPATH)/
            if [ ! -f $(AST_CONFIG_DIR)/misdn.conf ] ; then cp misdn.conf $(AST_CONFIG_DIR)/; fi
            @echo 
            @echo INSTALLATION SUCCEEDED
    
    #tmp: 
    #       ./sed_make_ies MSGS.DATA > ies_data.c
    #       ./sed_make_msgs MSGS.DATA > msgs_data.c
    debug:
            $(DEBUGSCRIPT) te_lib.c
            $(DEBUGSCRIPT) chan_misdn.c
    
    undebug:
            $(UNDEBUGSCRIPT) te_lib.c
            $(UNDEBUGSCRIPT) chan_misdn.c
    
    
    te_lib.o: te_lib.c te_lib.h isdn_msg.c isdn_msg_parser.c
            $(CC) -I$(MISDNUSERINC) -I$(MISDNUSER)/i4lnet/ -I$(LINUXINC) $(CFLAGS) -ggdb -c te_lib.c
    te_test.o: te_test.c
            $(CC) -I$(MISDNUSERINC) -I$(MISDNUSER)/i4lnet/ -I$(LINUXINC) $(CFLAGS)-ggdb -c te_test.c
    
    te_test: te_lib.o te_test.o
            $(CC) -I$(MISDNUSERINC) -I$(MISDNUSER)/i4lnet/ -I$(LINUXINC) $(CFLAGS) te_lib.o te_test.o $(MISDNUSERLIB)/libmISDN.a $(MISDNUSER)/i4lnet/libisdnnet.a -lpthread -ggdb -o te_test
    #$(MISDNUSERLIB)/libmISDN.a 
    
    clean: 
            rm -rf *.o *.so *~ te_test core.*
    
    getmisdn:
            cvs -d :pserver:guest:readonly@cvs.isdn4linux.de:/i4ldev login
            cvs -d :pserver:guest:readonly@cvs.isdn4linux.de:/i4ldev co mISDN
            cvs -d :pserver:guest:readonly@cvs.isdn4linux.de:/i4ldev co mISDNuser
    
    misdn:
            make -C $(LINUXROOT) SUBDIRS=mISDN/drivers/isdn/hardware/mISDN modules modules_install
            make -C mISDNuser
    
    Also ich gehs mal durch:

    INSTALL_MODPATH=/usr/lib/asterisk/modules ---stimmt
    ASTERISKSRC=/usr/src/asterisk ---stimmt
    AST_CONFIG_DIR=/etc/asterisk/ ---stimmt
    LINUXROOT=/usr/src/linux-2.6 ---stimmt

    Das sollte es doch gewesen sein, oder?

    Schöne Grüße
    Klaus
     
  4. WildThing

    WildThing Neuer User

    Registriert seit:
    22 Okt. 2004
    Beiträge:
    8
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    versuch mal die "#" vor dem
    #CFLAGS+=-DASTERISK_STABLE
    zu löschen
     
  5. drew

    drew Neuer User

    Registriert seit:
    5 Nov. 2004
    Beiträge:
    2
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Habe das gleiche Problem hast du ein Lösung?
     
  6. kperas

    kperas Neuer User

    Registriert seit:
    17 Jan. 2005
    Beiträge:
    156
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Hallo, ja hab ich, Du brauchst eine ältere * Version. Ich hab mir die 1.0.5 mit ftp runtergeladen und damit gehts.

    Grüße Klaus
     
  7. britzelfix

    britzelfix Gesperrt

    Registriert seit:
    28 Mai 2004
    Beiträge:
    1,099
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Ort:
    Braunschweig
    Hi,

    die Fehlermeldung:
    chan_misdn.c:30:34: asterisk/channel_pvt.h: No such file or directory
    sagt aus, daß der Compiler cc erfolglos versucht hat das File asterisk/channel_pvt.h aus den Verzeichnissen:
    /usr/src/asterisk/include
    /usr/src/mISDNuser/include
    /usr/src/linux-2.6/include
    /usr/src/mISDNuser/i4lnet/

    und default /usr/include zu laden.

    D.h. zuerst asterisk installieren, dann werden die
    asterisk Header in /usr/include/asterisk kopiert,
    und ein -f /usr/include/asterisk/channel_pvt.h ist möglich.
    Evtl. auch den symlink zu asterisk nach /usr/src legen.

    Gruß
    britzelfix