OpenBSC + * + LCR -> Problems with LCR (--with-gsm-bs)

This is merely a historical archive of years 2008-2021, before the migration to mailman3.

A maintained and still updated list archive can be found at https://lists.osmocom.org/hyperkitty/list/OpenBSC@lists.osmocom.org/.

altaf sk altaf329 at gmail.com
Tue Jun 26 17:45:55 UTC 2012


Hello all,

I have cloned the lcr from the below link.

Development git

git clone git://git.misdn.eu/lcr.git/ -b master lcr-master

Cloning from this git url i am able to get all the sip.cpp and sip.h header
files. This gives me to do the configure along with sip.

./configure --without-asterisk --with-gsm-ms --with-sip

But i loose when doing  the make.

When I do 'make' it it produces following error.

mISDN.cpp:61: error: aggregate ‘mi_ext_fn_s myfn’ has incomplete type and
cannot be defined
mISDN.cpp: In function ‘int mISDN_initialize()’:
mISDN.cpp:88: error: ‘mISDN_set_debug_level’ was not declared in this scope
mISDN.cpp:90: error: ‘mISDN_set_debug_level’ was not declared in this scope
make[1]: *** [mISDN.o] Error 1
make[1]: Leaving directory `/root/catchercatcher/lcr-master'
make: *** [all] Error 2



Can someone kindly help me at this stage.


Many thanks

Regards,

Altaf
On Tue, Jun 26, 2012 at 4:42 PM, Ellen Apolinar <
ellen.apolinar.td at googlemail.com> wrote:

> The error is solved. This only happens if I start LCR and then OpenBSC
> because with LCR OpenBSC is also started.
>
> Regards
> Ellen
>
> 2012/6/26 Ellen Apolinar <ellen.apolinar.td at googlemail.com>
>
>> @Don: Thanks, yes, that was the problem. I didn't know that the version
>> from linux-call-router.de is so old.
>>
>> @Mailinglist:
>>
>> I tried it again. And this time I installed it from git:
>>
>>> git clone git://git.misdn.eu/lcr.git/
>>> cd /usr/src/lcr
>>> ./configure –without-asterisk --with-gsm-bs
>>> make
>>> make install
>>>
>>
>> In the last installation I installed it from linux-call-router.de.
>> Configuration with --with-sip wasn't available.
>>
>> lcr start:
>>
>>> ** LCR  Version 1.10
>>>
>>> ERROR Cannot get device information for port 1. (ioctl IMGETDEVINFO
>>> failed ret=-1)
>>> LCR 1.10 started, waiting for calls...
>>>
>>
>> lcradmin state
>>
>>> Ext(port 0: hfc-e1.1) TE ptp l2hold use:0  L2 unkn  L1 unkn
>>> Int (port 1: ) extension  not loaded
>>>
>>
>>
>> Also OpenBSC worked. Now I get this error massage:
>>
>>> ./osmo-nitb -c openbsc.cfg -C
>>> 1 device found
>>>         id:             0
>>>         Dprotocols:     00000018
>>>         Bprotocols:     0000006e
>>>         protocol:       3
>>>         nrbchan:        30
>>>         name:           hfc-e1.1
>>> could not bind l2 socket Device or resource busy
>>> <0005> bsc_init.c:512 Error enabling E1 input driver
>>>
>>
>> I don't know what is wrong and how I can solve this. Google wasn't very
>> helpful in this case.
>>
>> And how can I connect LCR to OpenBSC?
>>
>> And what can I do with lcradmin state?
>>
>> Best regards
>> Ellen
>>
>>
>> 2012/6/26 Ellen Apolinar <ellen.apolinar.td at googlemail.com>
>>
>>> Hey Andreas,
>>>
>>> I try the way over SIP. But perhaps I make something wrong.
>>>
>>> What I want to do:
>>>
>>>> cd /usr/src/lcr
>>>> ./configure --prefix=/usr/src/lcr --without-misdn --with-sip
>>>>
>>>
>>> What I get:
>>>
>>>> configure: WARNING: unrecognized options: --without-misdn, --with-sip
>>>>
>>>
>>> What I am able to do:
>>>
>>>> ./configure --prefix=/usr/src/lcr --with
>>>> --with-asterisk    --with-gsm-ms      --with-PACKAGE
>>>> --with-ssl
>>>> --with-gsm-bs      --without-PACKAGE  --with-ss5
>>>>
>>>
>>> Makefile:
>>>
>>>> ENABLE_ASTERISK_CHANNEL_DRIVER_FALSE = #
>>>> ENABLE_ASTERISK_CHANNEL_DRIVER_TRUE =
>>>> ENABLE_GSM_BS_FALSE = #
>>>> ENABLE_GSM_BS_TRUE =
>>>> ENABLE_GSM_FALSE = #
>>>> ENABLE_GSM_MS_FALSE =
>>>> ENABLE_GSM_MS_TRUE = #
>>>> ENABLE_GSM_TRUE =
>>>> ENABLE_SS5_FALSE =
>>>> ENABLE_SS5_TRUE = #
>>>>
>>>
>>> I change to:
>>>
>>>> ENABLE_ASTERISK_CHANNEL_DRIVER_FALSE = #
>>>> ENABLE_ASTERISK_CHANNEL_DRIVER_TRUE =
>>>> ENABLE_GSM_BS_FALSE =
>>>> ENABLE_GSM_BS_TRUE = #
>>>> ENABLE_GSM_FALSE = #
>>>> ENABLE_GSM_MS_FALSE = #
>>>> ENABLE_GSM_MS_TRUE =
>>>> ENABLE_GSM_TRUE =
>>>> ENABLE_SS5_FALSE =
>>>> ENABLE_SS5_TRUE = #
>>>>
>>>
>>> make:
>>>
>>>> make  all-am
>>>> make[1]: Entering directory `/usr/src/lcr'
>>>> gcc   -DWITH_GSM_BS -I./openbsc/include -I./libosmocore/include
>>>> -I./openbsc   -Wall -DCONFIG_DATA="\"/usr/local/lcr\""
>>>> -DSHARE_DATA="\"/usr/local/lcr\"" -DLOG_DIR="\"/usr/local/lcr\""
>>>> -DEXTENSION_DATA="\"/usr/local/lcr/extensions\"" -D_GNU_SOURCE -fPIC -c
>>>> chan_lcr.c -o chan_lcr.po
>>>> chan_lcr.c: In function ‘send_setup_to_lcr’:
>>>> chan_lcr.c:644:12: error: ‘struct ast_channel’ has no member named ‘cid’
>>>> chan_lcr.c:655:12: error: ‘struct ast_channel’ has no member named ‘cid’
>>>> chan_lcr.c: In function ‘lcr_in_setup’:
>>>> chan_lcr.c:858:2: warning: passing argument 9 of ‘__ast_channel_alloc’
>>>> makes integer from pointer without a cast [enabled by default]
>>>> /usr/include/asterisk/channel.h:1118:2: note: expected ‘int’ but
>>>> argument is of type ‘char *’
>>>> chan_lcr.c:883:6: error: ‘struct ast_channel’ has no member named ‘cid’
>>>> chan_lcr.c:885:6: error: ‘struct ast_channel’ has no member named ‘cid’
>>>> chan_lcr.c:887:6: error: ‘struct ast_channel’ has no member named ‘cid’
>>>> chan_lcr.c:890:7: error: ‘struct ast_channel’ has no member named ‘cid’
>>>> chan_lcr.c:893:7: error: ‘struct ast_channel’ has no member named ‘cid’
>>>> chan_lcr.c:896:7: error: ‘struct ast_channel’ has no member named ‘cid’
>>>> chan_lcr.c:900:7: error: ‘struct ast_channel’ has no member named ‘cid’
>>>> chan_lcr.c:903:7: error: ‘struct ast_channel’ has no member named ‘cid’
>>>> chan_lcr.c:906:7: error: ‘struct ast_channel’ has no member named ‘cid’
>>>> chan_lcr.c:909:7: error: ‘struct ast_channel’ has no member named ‘cid’
>>>> chan_lcr.c: In function ‘handle_queue’:
>>>> chan_lcr.c:1707:18: error: incompatible types when assigning to type
>>>> ‘union ast_frame_subclass’ from type ‘char’
>>>> chan_lcr.c: In function ‘lcr_request’:
>>>> chan_lcr.c:1820:2: warning: passing argument 9 of ‘__ast_channel_alloc’
>>>> makes integer from pointer without a cast [enabled by default]
>>>> /usr/include/asterisk/channel.h:1118:2: note: expected ‘int’ but
>>>> argument is of type ‘char *’
>>>> chan_lcr.c: In function ‘lcr_call’:
>>>> chan_lcr.c:1927:9: error: ‘struct ast_channel’ has no member named ‘cid’
>>>> chan_lcr.c:1927:31: error: ‘struct ast_channel’ has no member named
>>>> ‘cid’
>>>> chan_lcr.c:1928:29: error: ‘struct ast_channel’ has no member named
>>>> ‘cid’
>>>> chan_lcr.c:1931:9: error: ‘struct ast_channel’ has no member named ‘cid’
>>>> chan_lcr.c:1931:32: error: ‘struct ast_channel’ has no member named
>>>> ‘cid’
>>>> chan_lcr.c:1932:30: error: ‘struct ast_channel’ has no member named
>>>> ‘cid’
>>>> chan_lcr.c:1934:9: error: ‘struct ast_channel’ has no member named ‘cid’
>>>> chan_lcr.c:1934:33: error: ‘struct ast_channel’ has no member named
>>>> ‘cid’
>>>> chan_lcr.c:1935:31: error: ‘struct ast_channel’ has no member named
>>>> ‘cid’
>>>> chan_lcr.c: In function ‘lcr_write’:
>>>> chan_lcr.c:2164:6: error: wrong type argument to unary exclamation mark
>>>> chan_lcr.c:2166:20: error: invalid operands to binary & (have ‘union
>>>> ast_frame_subclass’ and ‘format_t’)
>>>> chan_lcr.c: In function ‘lcr_read’:
>>>> chan_lcr.c:2229:25: error: incompatible types when assigning to type
>>>> ‘union ast_frame_subclass’ from type ‘format_t’
>>>> chan_lcr.c: In function ‘lcr_indicate’:
>>>> chan_lcr.c:2274:8: warning: assignment from incompatible pointer type
>>>> [enabled by default]
>>>> chan_lcr.c:2289:8: warning: assignment from incompatible pointer type
>>>> [enabled by default]
>>>> chan_lcr.c:2316:8: warning: assignment from incompatible pointer type
>>>> [enabled by default]
>>>> chan_lcr.c:2381:14: error: dereferencing pointer to incomplete type
>>>> chan_lcr.c:2382:33: error: dereferencing pointer to incomplete type
>>>> chan_lcr.c: At top level:
>>>> chan_lcr.c:2602:2: warning: initialization from incompatible pointer
>>>> type [enabled by default]
>>>> chan_lcr.c:2602:2: warning: (near initialization for
>>>> ‘lcr_tech.requester’) [enabled by default]
>>>> chan_lcr.c: In function ‘load_module’:
>>>> chan_lcr.c:2818:2: warning: passing argument 2 of
>>>> ‘ast_register_application2’ from incompatible pointer type [enabled by
>>>> default]
>>>> /usr/include/asterisk/module.h:458:5: note: expected ‘int (*)(struct
>>>> ast_channel *, const char *)’ but argument is of type ‘int (*)(struct
>>>> ast_channel *, void *)’
>>>> make[1]: *** [chan_lcr.po] Error 1
>>>> make[1]: Leaving directory `/usr/src/lcr'
>>>> make: *** [all] Error 2
>>>>
>>>
>>> make install:
>>>
>>>> gcc   -DWITH_GSM_BS -I./openbsc/include -I./libosmocore/include
>>>> -I./openbsc   -Wall -DCONFIG_DATA="\"/usr/local/lcr\""
>>>> -DSHARE_DATA="\"/usr/local/lcr\"" -DLOG_DIR="\"/usr/local/lcr\""
>>>> -DEXTENSION_DATA="\"/usr/local/lcr/extensions\"" -D_GNU_SOURCE -fPIC -c
>>>> chan_lcr.c -o chan_lcr.po
>>>> chan_lcr.c: In function ‘send_setup_to_lcr’:
>>>> chan_lcr.c:644:12: error: ‘struct ast_channel’ has no member named ‘cid’
>>>> chan_lcr.c:655:12: error: ‘struct ast_channel’ has no member named ‘cid’
>>>> chan_lcr.c: In function ‘lcr_in_setup’:
>>>> chan_lcr.c:858:2: warning: passing argument 9 of ‘__ast_channel_alloc’
>>>> makes integer from pointer without a cast [enabled by default]
>>>> /usr/include/asterisk/channel.h:1118:2: note: expected ‘int’ but
>>>> argument is of type ‘char *’
>>>> chan_lcr.c:883:6: error: ‘struct ast_channel’ has no member named ‘cid’
>>>> chan_lcr.c:885:6: error: ‘struct ast_channel’ has no member named ‘cid’
>>>> chan_lcr.c:887:6: error: ‘struct ast_channel’ has no member named ‘cid’
>>>> chan_lcr.c:890:7: error: ‘struct ast_channel’ has no member named ‘cid’
>>>> chan_lcr.c:893:7: error: ‘struct ast_channel’ has no member named ‘cid’
>>>> chan_lcr.c:896:7: error: ‘struct ast_channel’ has no member named ‘cid’
>>>> chan_lcr.c:900:7: error: ‘struct ast_channel’ has no member named ‘cid’
>>>> chan_lcr.c:903:7: error: ‘struct ast_channel’ has no member named ‘cid’
>>>> chan_lcr.c:906:7: error: ‘struct ast_channel’ has no member named ‘cid’
>>>> chan_lcr.c:909:7: error: ‘struct ast_channel’ has no member named ‘cid’
>>>> chan_lcr.c: In function ‘handle_queue’:
>>>> chan_lcr.c:1707:18: error: incompatible types when assigning to type
>>>> ‘union ast_frame_subclass’ from type ‘char’
>>>> chan_lcr.c: In function ‘lcr_request’:
>>>> chan_lcr.c:1820:2: warning: passing argument 9 of ‘__ast_channel_alloc’
>>>> makes integer from pointer without a cast [enabled by default]
>>>> /usr/include/asterisk/channel.h:1118:2: note: expected ‘int’ but
>>>> argument is of type ‘char *’
>>>> chan_lcr.c: In function ‘lcr_call’:
>>>> chan_lcr.c:1927:9: error: ‘struct ast_channel’ has no member named ‘cid’
>>>> chan_lcr.c:1927:31: error: ‘struct ast_channel’ has no member named
>>>> ‘cid’
>>>> chan_lcr.c:1928:29: error: ‘struct ast_channel’ has no member named
>>>> ‘cid’
>>>> chan_lcr.c:1931:9: error: ‘struct ast_channel’ has no member named ‘cid’
>>>> chan_lcr.c:1931:32: error: ‘struct ast_channel’ has no member named
>>>> ‘cid’
>>>> chan_lcr.c:1932:30: error: ‘struct ast_channel’ has no member named
>>>> ‘cid’
>>>> chan_lcr.c:1934:9: error: ‘struct ast_channel’ has no member named ‘cid’
>>>> chan_lcr.c:1934:33: error: ‘struct ast_channel’ has no member named
>>>> ‘cid’
>>>> chan_lcr.c:1935:31: error: ‘struct ast_channel’ has no member named
>>>> ‘cid’
>>>> chan_lcr.c: In function ‘lcr_write’:
>>>> chan_lcr.c:2164:6: error: wrong type argument to unary exclamation mark
>>>> chan_lcr.c:2166:20: error: invalid operands to binary & (have ‘union
>>>> ast_frame_subclass’ and ‘format_t’)
>>>> chan_lcr.c: In function ‘lcr_read’:
>>>> chan_lcr.c:2229:25: error: incompatible types when assigning to type
>>>> ‘union ast_frame_subclass’ from type ‘format_t’
>>>> chan_lcr.c: In function ‘lcr_indicate’:
>>>> chan_lcr.c:2274:8: warning: assignment from incompatible pointer type
>>>> [enabled by default]
>>>> chan_lcr.c:2289:8: warning: assignment from incompatible pointer type
>>>> [enabled by default]
>>>> chan_lcr.c:2316:8: warning: assignment from incompatible pointer type
>>>> [enabled by default]
>>>> chan_lcr.c:2381:14: error: dereferencing pointer to incomplete type
>>>> chan_lcr.c:2382:33: error: dereferencing pointer to incomplete type
>>>> chan_lcr.c: At top level:
>>>> chan_lcr.c:2602:2: warning: initialization from incompatible pointer
>>>> type [enabled by default]
>>>> chan_lcr.c:2602:2: warning: (near initialization for
>>>> ‘lcr_tech.requester’) [enabled by default]
>>>> chan_lcr.c: In function ‘load_module’:
>>>> chan_lcr.c:2818:2: warning: passing argument 2 of
>>>> ‘ast_register_application2’ from incompatible pointer type [enabled by
>>>> default]
>>>> /usr/include/asterisk/module.h:458:5: note: expected ‘int (*)(struct
>>>> ast_channel *, const char *)’ but argument is of type ‘int (*)(struct
>>>> ast_channel *, void *)’
>>>>
>>>
>>> lcr start:
>>>
>>>> ** LCR  Version 1.7
>>>>
>>>> 000000 DEBUG (in getrulesetbyname() line 1871): ruleset main found.
>>>> GSM is enabled, but not compiled. Use --with-gsm-bs or --with-gsm-ms
>>>> while configure!
>>>> --------------------- 2012.06.26 10:35:27 000001
>>>>
>>>> 000001 DEBUG (in join_free() line 99): no more pending join(s), done!
>>>>
>>>
>>> Sofiasip is installed. Is there anything I forget so I can't configure
>>> LCR with sip?
>>>
>>> Best regards.
>>> Ellen
>>>
>>>
>>> 2012/6/24 Andreas Eversberg <andreas at eversberg.eu>
>>>
>>>> Ellen Apolinar wrote:
>>>>
>>>>>
>>>>> OpenBSC seems to work without errors but to connect it with asterisk I
>>>>> need mISDN, mISDNuser and LCR.
>>>>>
>>>>>  hi,
>>>>
>>>> if you like to use lcr with gsm (bs or ms), then you cannot use
>>>> asterisk channel driver. it only works with isdn. but you can use sip. in
>>>> order to do that you may:
>>>>
>>>> - disable mISDN  (--without-misdn)
>>>> - enable sip (--with-sip), you also need to have sipsofia installed
>>>> - add a sip interface (see default/interface.conf). then everything is
>>>> possible without mISDN, but you cannot use isdn phones/lines in this setup.
>>>>
>>>> example to just connect GSM and SIP interface without routing:
>>>>
>>>>  [GSM]
>>>> gsm-bs
>>>> tones yes
>>>> earlyb no
>>>> #rtp-bridge
>>>> bridge SIP
>>>>
>>>>
>>>> [SIP]
>>>> sip <local ip>[:local sip port] <asterisk sip ip>[:asterisk sip port]
>>>> tones no
>>>> earlyb yes
>>>> #rtp-bridge
>>>> bridge GSM
>>>>
>>>> if asterisk and lcr run on the same machine, you need to change the sip
>>>> port on asterisk or lcr side.
>>>>
>>>> if you like to use GSM codec on asterisk side, you may enable
>>>> rtp-bridge. then the asterisk directly negotiates the codec with the phone.
>>>> in this case GSM codec must be supported by asterisk. tested codecs are
>>>> FR(standard) and EFR.
>>>>
>>>> regards,
>>>>
>>>> andreas
>>>>
>>>>
>>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osmocom.org/pipermail/openbsc/attachments/20120626/4d6941dc/attachment.htm>


More information about the OpenBSC mailing list