Hi!

I had the same problem yesterday - but google revealed:
http://lists.digium.com/pipermail/asterisk-users/2004-April/044867.html

furthermore the app_dtmftotext application fails to start, so i deleted it - I hope this has no influence :-(

regards,
klaus

Terry Goodwin wrote:
Thanks for offering to help with this.

I checked out the procedures and attempted this again without success.



Here is the end of the screen output when the compile fails.

gcc -02 -g -Include -I ../include -c -o app_rxfax.o app_rxfax.c app_rxfax.c:45: error: 'PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP' undeclared here (not in a function)
make[1]: *** [app_rxfax.o] error 1
make[1]: leaving directory '/usr/src/asterisk/apps'
make: *** [subdirs] Error 1





The following is a copy of the modified makefile. It looks correct as per your description of what should have been done.

#
# Asterisk -- A telephony toolkit for Linux.
# # Makefile for PBX frontends (dynamically loaded)
#
# Copyright (C) 1999, Mark Spencer
#
# Mark Spencer <[EMAIL PROTECTED]>
#
# This program is free software, distributed under the terms of
# the GNU General Public License
#


USE_MYSQL_VM_INTERFACE=0
USE_POSTGRES_VM_INTERFACE=0

#APPS=app_dial.so app_playback.so app_directory.so app_intercom.so
app_mp3.so APPS=app_dial.so app_playback.so app_voicemail.so app_directory.so
app_mp3.so\
app_system.so app_echo.so app_record.so app_image.so app_url.so
app_disa.so \
app_agi.so app_qcall.so app_adsiprog.so app_getcpeid.so
app_milliwatt.so \
app_zapateller.so app_setcallerid.so app_festival.so \
app_queue.so app_senddtmf.so app_parkandannounce.so
app_striplsd.so \
app_setcidname.so app_lookupcidname.so app_substring.so
app_macro.so \
app_authenticate.so app_softhangup.so app_lookupblacklist.so \
app_waitforring.so app_privacy.so app_db.so app_chanisavail.so \
app_enumlookup.so app_transfer.so app_setcidnum.so app_cdr.so \
app_hasnewvoicemail.so app_sayunixtime.so app_cut.so app_read.so
\
app_setcdruserfield.so app_random.so app_ices.so app_eval.so \
app_nbscat.so app_sendtext.so app_exec.so app_sms.so \
app_groupcount.so app_txtcidname.so


ifneq (${OSARCH},Darwin)
ifneq (${OSARCH},FreeBSD)
APPS+=app_intercom.so
endif
endif

#APPS+=app_sql_postgres.so
#APPS+=app_sql_odbc.so

APPS+=$(shell if [ -f /usr/include/linux/zaptel.h ]; then echo
"app_zapras.so app_meetme.so app_flash.so app_zapbarge.so
app_zapscan.so" ; fi)
#APPS+=$(shell if [ -f /usr/include/zap.h ]; then echo "app_rpt.so" ;
fi)

APPS+=$(shell if [ -f /usr/include/spandsp.h ]; then echo "app_rxfax.so
app_txfax.so app_dtmftotext.so" ; fi)
APPS+=$(shell if [ -f /usr/local/include/spandsp.h ]; then echo
"app_rxfax.so app_txfax.so app_dtmftotext.so" ; fi)

CFLAGS+=-fPIC

ifeq ($(USE_POSTGRES_VM_INTERFACE),1)
CFLAGS+=-DUSEPOSTGRESVM
endif

ifeq ($(USE_MYSQL_VM_INTERFACE),1)
CFLAGS+=-DUSEMYSQLVM
endif

all: $(APPS)

clean:
        rm -f *.so *.o look .depend

%.so : %.o
        $(CC) $(SOLINK) -o $@ $<

app_rpt.so : app_rpt.o
        $(CC) $(SOLINK) -o $@ $< -ltonezone

install: all
        for x in $(APPS); do $(INSTALL) -m 755 $$x
$(DESTDIR)$(MODULES_DIR) ; done
        rm -f $(DESTDIR)$(MODULES_DIR)/app_datetime.so

app_todd.o: app_todd.c
        gcc -pipe -O6 -g  -Iinclude -I../include -D_REENTRANT
-march=i586 -DDO_CRASH -c -o  app_todd.o app_todd.c

app_todd.so: app_todd.o
        $(CC) $(SOLINK) -o $@ $< -L/usr/local/ssl/lib -lssl -lcrypto

app_rxfax.so : app_rxfax.o
        $(CC) $(SOLINK) -o $@ $< -lspandsp -ltiff

app_rxfax.o: app_rxfax.c
        gcc -O2 -g  -Iinclude -I../include -c -o  app_rxfax.o
app_rxfax.c

app_txfax.so : app_txfax.o
        $(CC) $(SOLINK) -o $@ $< -lspandsp -ltiff

app_txfax.o: app_txfax.c
        gcc -O2 -g  -Iinclude -I../include -c -o  app_txfax.o
app_txfax.c

app_dtmftotext.so : app_dtmftotext.o
        $(CC) $(SOLINK) -o $@ $< -lspandsp -ltiff

app_dtmftotexto: app_dtmftotext.c
        gcc -O2 -g  -Iinclude -I../include -c -o  app_dtmftotext.o
app_dtmftotext.c

app_voicemail.so : app_voicemail.o
ifeq ($(USE_MYSQL_VM_INTERFACE),1)
$(CC) $(SOLINK) -o $@ $(MLFLAGS) $< -L/usr/lib/mysql
-lmysqlclient -lz
else
ifeq ($(USE_POSTGRES_VM_INTERFACE),1)
$(CC) $(SOLINK) -o $@ $(MLFLAGS) $< -lpq
else
$(CC) $(SOLINK) -o $@ $(MLFLAGS) $< endif
endif


app_sql_postgres.o: app_sql_postgres.c
        $(CC) -pipe -I/usr/local/pgsql/include $(CFLAGS) -c -o
app_sql_postgres.o app_sql_postgres.c

app_sql_postgres.so: app_sql_postgres.o
        $(CC) $(SOLINK) -o $@ $< -L/usr/local/pgsql/lib -lpq

app_sql_odbc.so: app_sql_odbc.o
        $(CC) $(SOLINK) -o $@ $< -lodbc

look:   look.c
        gcc -pipe -O6 -g look.c -o look -lncurses

ifneq ($(wildcard .depend),)
include .depend
endif

depend: .depend

.depend:
        ../mkdep $(CFLAGS) `ls *.c`

env:
        env



Stephen Davies <[EMAIL PROTECTED]> 5/25/2004 8:10:22 AM >>>



On Tue, 25 May 2004, Terry Goodwin wrote:


I have been attempting to download, compile and configure spandsp to
function with * without much luck.  I am guessing that some

assumptions

were made regarding the users knowledge level of Linux. Sadly, I

must

not live up to those assumptions.

My problem begins when after compiling spandsp I look for the
app_rxfax.c, app_txfax.c, app_dtmftotext.c and makefile.patch files

to

place in the /usr/src/asterisk/apps directory.  I cant seem to find
these files ANYWHERE on my system.  So I then make the assumption

that

they were not created by the compile of spandsp nor do they exist in

the

source of spandsp. I did locate these files on the FTP server where

I

downloaded the source (I believe it was version J).  Not sure if the
files located on this site were version specific or not I downloaded
them anyway and placed them into the /usr/src/asterisk/apps

directory.


I think I figured out that you need to copy the makefile.patch to

the

same directory and run it against the makefile that exists in the

apps

directory. (Never done this before so I might have done the

equivalent

of gassing up my car via the radiator)


Hi,


You need to understand that spandsp is a general purpose library for
doing digital signal processing.  It's of general use, not for
Asterisk is particular.


So when you download and compile spandsp, you are simply installing
that library on your system.  Asterisk knows nothing about using it

at

this point.


So that I presume went well for you: if so you will find some
libspandsp* files in your /usr/local/lib/ directory.

For the Asterisk applications (rxfax etc) you need to download the
various .c files and the makefile.patch as you did.  The .c files

just

get copied into the apps directory, the patch you use to patch the
Makefile.

If it worked right you can look in the Makefile and should see lines
like so:

app_rxfax.so : app_rxfax.o
     $(CC) $(SOLINK) -o $@ $< -lspandsp -ltiff

app_rxfax.o: app_rxfax.c
     gcc -O2 -g  -Iinclude -I../include -c -o  app_rxfax.o

app_rxfax.c

app_txfax.so : app_txfax.o
     $(CC) $(SOLINK) -o $@ $< -lspandsp -ltiff

app_txfax.o: app_txfax.c

> gcc -O2 -g -Iinclude -I../include -c -o app_txfax.o app_txfax.c


app_dtmftotext.so : app_dtmftotext.o
     $(CC) $(SOLINK) -o $@ $< -lspandsp -ltiff

app_dtmftotexto: app_dtmftotext.c
     gcc -O2 -g  -Iinclude -I../include -c -o  app_dtmftotext.o

app_dtmftotext.c

And some more lines in similar vein.

Then it would be back up to the main asterisk directory, "make
clean" and "make".  If you get an error compiling, send it to me and
I'll see if I can see what's wrong.

Steve



_______________________________________________ Asterisk-Users mailing list [EMAIL PROTECTED] http://lists.digium.com/mailman/listinfo/asterisk-users To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users


_______________________________________________
Asterisk-Users mailing list
[EMAIL PROTECTED]
http://lists.digium.com/mailman/listinfo/asterisk-users
To UNSUBSCRIBE or update options visit:
  http://lists.digium.com/mailman/listinfo/asterisk-users

Reply via email to