[Home]

Summary:ASTERISK-06972: addons are compiled with errors
Reporter:Mike Anikienko (mike anikienko)Labels:
Date Opened:2006-05-13 12:07:53Date Closed:2006-05-13 12:13:01
Priority:MinorRegression?No
Status:Closed/CompleteComponents:Core/General
Versions:Frequency of
Occurrence
Related
Issues:
Environment:Attachments:
Description:[root@mandriva asterisk-addons]# make
make -C format_mp3 all
make[1]: Entering directory `/usr/src/asterisk-svn-20060510/asterisk-addons/format_mp3'
gcc -pipe -fPIC -Wall -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations   -D_REENTRANT -D_GNU_SOURCE  -O6    -c -o format_mp3.o format_mp3.c
In file included from /usr/include/asterisk/utils.h:36,
                from /usr/include/asterisk/cdr.h:48,
                from /usr/include/asterisk/channel.h:113,
                from format_mp3.c:28:
/usr/include/asterisk/strings.h:264: error: syntax error before '__extension__'
/usr/include/asterisk/strings.h:264: error: syntax error before ';' token
/usr/include/asterisk/strings.h:264: error: '__len' undeclared here (not in a function)
/usr/include/asterisk/strings.h:264: error: initializer element is not constant
/usr/include/asterisk/strings.h:264: error: syntax error before 'if'
/usr/include/asterisk/strings.h:264: error: redefinition of '__retval'
/usr/include/asterisk/strings.h:264: error: previous definition of '__retval' was here
/usr/include/asterisk/strings.h:264: error: syntax error before 'const'
/usr/include/asterisk/strings.h:264: error: syntax error before '}' token
/usr/include/asterisk/strings.h:280: error: conflicting types for 'strtoq'
/usr/include/stdlib.h:362: error: previous definition of 'strtoq' was here
format_mp3.c:53: error: redefinition of 'struct ast_filestream'
format_mp3.c:332: warning: function declaration isn't a prototype
format_mp3.c: In function 'load_module':
format_mp3.c:343: warning: passing argument 1 of 'ast_format_register' from incompatible pointer type
format_mp3.c:343: error: too many arguments to function 'ast_format_register'
format_mp3.c: At top level:
format_mp3.c:349: warning: function declaration isn't a prototype
format_mp3.c:354: warning: function declaration isn't a prototype
format_mp3.c:366: warning: function declaration isn't a prototype
format_mp3.c:372: warning: function declaration isn't a prototype
{standard input}: Assembler messages:
{standard input}:9: Error: symbol `__retval' is already defined
make[1]: *** [format_mp3.o]  1
make[1]: Leaving directory `/usr/src/asterisk-svn-20060510/asterisk-addons/format_mp3'
make: *** [format_mp3/format_mp3.so]  2

Same errors you can see at http://forums.digium.com/viewtopic.php?p=19942

****** ADDITIONAL INFORMATION ******

I see that ast_format_register definition is changed. I attempted to patch, but i cant solve "syntax error before '__extension__'" problem.
If i skip build module format_mp3 and app_saycountpl, i gain:

[root@mandriva asterisk-addons]# make
cc -fPIC -I../asterisk -D_GNU_SOURCE -DMYSQL_LOGUNIQUEID  -I/usr/include/mysql     -c -o cdr_addon_mysql.o cdr_addon_mysql.c
In file included from /usr/include/asterisk/utils.h:36,
                from /usr/include/asterisk/cdr.h:48,
                from /usr/include/asterisk/channel.h:113,
                from cdr_addon_mysql.c:25:
/usr/include/asterisk/strings.h:280: error: conflicting types for 'strtoq'
/usr/include/stdlib.h:197: error: previous declaration of 'strtoq' was here
make: *** [cdr_addon_mysql.o]  1

But self asterisk (trunk 26417) compiled Ok, and work.
Please help.
Comments:By: Jason Parker (jparker) 2006-05-13 12:13:01

This has been posted on the asterisk-dev mailing list many, many times.  If you use trunk, you should subscribe to that list.  -addons will not be fixed until trunk "cools down".