[asterisk-dev] several compile problems after SVN 44056 changes

Luigi Rizzo rizzo at icir.org
Sat Sep 30 06:50:36 MST 2006


The changes to the makefiles in svn 44056 cause a number of
compile problems, some platform-independent (e.g. when using
AST_DEVMODE=yes), some maybe platform specific.
On the same platform(s), things worked fine as of last tuesday.

In detail:

- the code in codecs/lpc10 (and probably codecs/gsm, though i
  haven't got that far) contain a number of questionable constructs
  (e.g. /* in comments, unused variables, etc.) which cause compilation
  to fail with -Werror (brought in by AST_DEVMODE=yes)
  Some of these are easy to fix (e.g. the comments) but others may
  be trickier.
	I believe a good plan for this is to add some magic in
  the individual Makefiles to remove -Werror, e.g.

	Index: lpc10/Makefile
	===================================================================
	--- lpc10/Makefile      (revision 44077)
	+++ lpc10/Makefile      (working copy)
	@@ -23,6 +23,10 @@
	 
	 CFLAGS+= -fPIC -Wno-comment
	 
	+# The code here is a highly non-standard, so compiling with -Werror
	+# fails miserably.
	+ASTCFLAGS:= $(ASTCFLAGS:-Werror=)
	+
	 #fix for PPC processors and ALPHA, And UltraSparc too
	 ifneq ($(OSARCH),Darwin)
	 ifneq ($(findstring BSD,${OSARCH}),BSD)

  and then (maybe in trunk) try to address the individual problems.

- also with AST_DEVMODE=yes, at least on FreeBSD (6.1-stable) we get an
  error in editline (works fine without AST_DEVMODE). No idea on
  the fix. I believe again there is a warning that becomes an error,
  confusing 'configure'

	cd editline && test -f config.h || CFLAGS="-I../include -pipe -Wall -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -g3 -Werror -Wunused -I/usr/local/include -L/usr/local/lib -march=i386   -O6" ./configure --build=i386-unknown-freebsd6.1 --host=i386-unknown-freebsd6.1
	creating cache ./config.cache
	checking for gcc... gcc
	checking whether the C compiler (gcc -I../include -pipe -Wall -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -g3 -Werror -Wunused -I/usr/local/include -L/usr/local/lib -march=i386   -O6 ) works... no
	configure: error: installation or configuration problem: C compiler cannot create executables.
	gmake[1]: *** [editline/libedit.a] Error 1
	gmake: *** [main] Error 2

- once again on FreeBSD, even without AST_DEVMODE=yes, there is an error
  building ..., i suppose due to a missing -lpthreads.

g++  -o asterisk -Wl,--export-dynamic    abstract_jb.o acl.o aescrypt.o aeskey.o aestab.o alaw.o app.o ast_expr2.o ast_expr2f.o asterisk.o astmm.o autoservice.o callerid.o cdr.o channel.o chanvars.o cli.o config.o cryptostub.o db.o devicestate.o dns.o dnsmgr.o dsp.o enum.o file.o fixedjitterbuf.o frame.o fskmodem.o http.o image.o indications.o io.o jitterbuf.o loader.o logger.o manager.o md5.o netsock.o pbx.o plc.o privacy.o rtp.o say.o sched.o sha1.o slinfactory.o srv.o stdtime/localtime.o strcompat.o tdd.o term.o translate.o udptl.o ulaw.o utils.o editline/libedit.a db1-ast/libdb1.a buildinfo.o -ltermcap  -lm -lcrypto  

  Here i am not sure why it is using g++ to do the linking...

cheers
luigi


More information about the asterisk-dev mailing list