[Asterisk-Users] Asterisk 1.2.0 AddOn's compile error with MySQL 5.0.15

Rainer Maier rainer at pen.no-ip.org
Mon Nov 21 14:49:49 MST 2005


Hi all,
I want to compile asterisk's newest version with mysql's newest version, but
I ran into a big problem.

At compile time for asterisk-addons-1.2.0 I get the following errors:

make

<-- snip -->

cc -fPIC -I../asterisk -D_GNU_SOURCE -I/usr/local/mysql/include
-I/usr/local/mysql/include/mysql      -c -o res_config_mysql.o
res_config_mysql.c
res_config_mysql.c: In function 'realtime_mysql':
res_config_mysql.c:117: warning: incompatible implicit declaration of
built-in function 'snprintf'
res_config_mysql.c: In function 'realtime_multi_mysql':
res_config_mysql.c:224: warning: incompatible implicit declaration of
built-in function 'snprintf'
res_config_mysql.c: In function 'update_mysql':
res_config_mysql.c:313: warning: incompatible implicit declaration of
built-in function 'snprintf'
res_config_mysql.c: In function 'config_mysql':
res_config_mysql.c:376: warning: incompatible implicit declaration of
built-in function 'snprintf'
res_config_mysql.c: In function 'realtime_mysql_status':
res_config_mysql.c:648: warning: incompatible implicit declaration of
built-in function 'snprintf'
res_config_mysql.c:650: warning: incompatible implicit declaration of
built-in function 'snprintf'
res_config_mysql.c:652: warning: incompatible implicit declaration of
built-in function 'snprintf'
res_config_mysql.c:656: warning: incompatible implicit declaration of
built-in function 'snprintf'
cc -shared -Xlinker -x -o res_config_mysql.so res_config_mysql.o
-lmysqlclient -lz    -L/usr/local/mysql/lib -L/usr/local/mysql/lib/mysql  
sv5000:/usr/src/asterisk-addons-1.2.0# 

Now the details:

I wanted to set up a plain asterisk computer without any more programms.
I set up a plain debian sarge system and installed kernel 2.6.14.2.
I downloaded, unpacked mysql-5.0.15 under /usr/src/mysql-5.0.15.
Then I put the link /usr/src/mysql to this directory.
I compiled and installed mysql successfully.

I then downloaded asterisk-1.2.0.tar.gz and unpacked it to
/usr/src/asterisk-1.2.0 I compiled and installed it successfully with make,
make install and make-samples.

I then downloaded asterisk-addons-1.2.0.tar.gz and unpacked it to
/usr/src/asterisk-addons-1.2.0 I tried to compile and had the problem that
the compiler did not find the mysql includes an libs.
I had to modify Makefile first.

First I added this directory to the MODS, CFLAGS and MLFLAGS.
It would be nice to have them in the next update.
Afterwards the compiler stopped with the above error's.

Is there a new 'snprintf' version used ?
Do you have a solution for that ?
At the end are the compiler etc. versions.

Makefile at /usr/src/asterisk-addons-1.2.0
----------------------------------------------------------------------------
-------
 
|
 
V
MODS+=$(shell if [ -d /usr/local/mysql/include ] || [ -d 
MODS+MODS+/usr/local/mysql/include/mysql ] || [ -d /usr/include/mysql ] 
MODS+|| [MODS+-d /usr/local/include/mysql ] || [ -d 
MODS+/usr/local/mysql/include ] || [ -d /opt/mysql/include ]; then echo 
MODS+"cdr_addon_mysql.so app_addon_sql_m ysql.so res_config_mysql.so"; 
MODS+fi)
CFLAGS+=$(shell if [ -d /usr/local/mysql/include ]; then echo
"-I/usr/local/mysql/include"; fi)
CFLAGS+=$(shell if [ -d /usr/local/mysql/include/mysql ]; then echo
"-I/usr/local/mysql/include/mysql"; fi)     <-----------
CFLAGS+=$(shell if [ -d /usr/include/mysql ]; then echo 
CFLAGS+"-I/usr/include/mysql"; fi) =$(shell if [ -d 
CFLAGS+/usr/local/include/mysql ]; then echo 
CFLAGS+"-I/usr/local/include/mysql"; fi) =$(shell if [ -d 
CFLAGS+/opt/mysql/include/mysql ]; then echo 
CFLAGS+"-I/opt/mysql/include/mysql"; fi)
MLFLAGS=
MLFLAGS+=$(shell if [ -d /usr/lib/mysql ]; then echo "-L/usr/lib/mysql";
MLFLAGS+fi) =$(shell if [ -d /usr/lib64/mysql ]; then echo 
MLFLAGS+"-L/usr/lib64/mysql"; fi) =$(shell if [ -d /usr/local/mysql/lib ];
then echo "-L/usr/local/mysql/lib"; fi)
MLFLAGS+=$(shell if [ -d /usr/local/mysql/lib/mysql ]; then echo
"-L/usr/local/mysql/lib/mysql"; fi)            <-----------
MLFLAGS+=$(shell if [ -d /usr/local/lib/mysql ]; then echo 
MLFLAGS+"-L/usr/local/lib/mysql"; fi) =$(shell if [ -d 
MLFLAGS+/opt/mysql/lib/mysql ]; then echo "-L/opt/mysql/lib/mysql"; fi)



Details for compiler and libs:
dpkg -l | grep gcc
ii  gcc                      4.0.2-1               The GNU C compiler
ii  gcc-3.3-base             3.3.6-7               The GNU Compiler
Collection (base package)
ii  gcc-4.0                  4.0.2-2               The GNU C compiler
ii  gcc-4.0-base             4.0.2-2               The GNU Compiler
Collection (base package)
ii  libgcc1                  4.0.2-2               GCC support library

dpkg -l | grep libssl-dev
ii  libssl-dev               0.9.8a-3              SSL development
libraries, header files and 

dpkg -l | grep zlib1g-dev 
ii  zlib1g-dev               1.2.3-4               compression library -
development


Best regards

Rainer




More information about the asterisk-users mailing list