[Home]

Summary:ASTERISK-12901: Asterisk has new problems compiling on Solaris
Reporter:Doug McCallum (dougm)Labels:
Date Opened:2008-10-15 10:50:26Date Closed:2011-06-07 14:07:19
Priority:MinorRegression?No
Status:Closed/CompleteComponents:Core/General
Versions:Frequency of
Occurrence
Related
Issues:
Environment:Attachments:
Description:Numerous warnings are now occurring and a final fail during build of what appears to be editline.c  Build transcript is included in the "Additional Information" section. Same problems on both x86 and SPARC.


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

Script started on October 15, 2008  9:49:21 AM MDT
thistle: gmake
CC="cc" CXX="g++" LD="" AR="" RANLIB="" CFLAGS="" gmake -C menuselect CONFIGURE_
SILENT="--silent" makeopts
gmake[1]: Entering directory `/export/home/dougm/asterisk/menuselect'
gmake[1]: Leaving directory `/export/home/dougm/asterisk/menuselect'
gmake[1]: Entering directory `/export/home/dougm/asterisk/menuselect'
gmake[1]: `makeopts' is up to date.
gmake[1]: Leaving directory `/export/home/dougm/asterisk/menuselect'
CC="cc" CXX="g++" LD="" AR="" RANLIB="" CFLAGS="" gmake -C menuselect CONFIGURE_
SILENT="--silent" menuselect
gmake[1]: Entering directory `/export/home/dougm/asterisk/menuselect'
gcc -g -c -D_GNU_SOURCE -Wall   -c -o menuselect.o menuselect.c
menuselect.c: In function `process_deps':
menuselect.c:524: warning: implicit declaration of function `strsep'
menuselect.c: In function `process_prev_failed_deps':
menuselect.c:835: warning: assignment makes pointer from integer without a cast
menuselect.c:836: warning: assignment makes pointer from integer without a cast
menuselect.c: In function `parse_existing_config':
menuselect.c:898: warning: assignment makes pointer from integer without a cast
menuselect.c:911: warning: assignment makes pointer from integer without a cast
menuselect.c: In function `generate_makeopts_file':
menuselect.c:1063: warning: assignment makes pointer from integer without a cast
menuselect.c:1065: warning: assignment makes pointer from integer without a cast
menuselect.c:1073: warning: assignment makes pointer from integer without a cast
menuselect.c:1075: warning: assignment makes pointer from integer without a cast
gcc -g -c -D_GNU_SOURCE -Wall   -c -o strcompat.o strcompat.c
strcompat.c: In function `strcasestr':
strcompat.c:107: warning: implicit declaration of function `alloca'
strcompat.c: In function `strtoq':
strcompat.c:278: warning: integer constant is too large for "long" type
strcompat.c:278: warning: integer constant is too large for "long" type
strcompat.c:278: warning: integer constant is too large for "long" type
strcompat.c:278: warning: integer constant is too large for "long" type
strcompat.c:301: warning: integer constant is too large for "long" type
strcompat.c:301: warning: integer constant is too large for "long" type
gcc -g -c -D_GNU_SOURCE -Wall   -c -o menuselect_stub.o menuselect_stub.c
gmake[2]: Entering directory `/export/home/dougm/asterisk/menuselect/mxml'
gcc -O -Wall   -c mxml-attr.c
gcc -O -Wall   -c mxml-entity.c
gcc -O -Wall   -c mxml-file.c
gcc -O -Wall   -c mxml-index.c
gcc -O -Wall   -c mxml-node.c
gcc -O -Wall   -c mxml-search.c
gcc -O -Wall   -c mxml-set.c
gcc -O -Wall   -c mxml-private.c
gcc -O -Wall   -c mxml-string.c
/usr/bin/rm -f libmxml.a
/usr/bin/ar crvs libmxml.a mxml-attr.o mxml-entity.o mxml-file.o mxml-index.o mx
ml-node.o mxml-search.o mxml-set.o mxml-private.o mxml-string.o
a - mxml-attr.o
a - mxml-entity.o
a - mxml-file.o
a - mxml-index.o
a - mxml-node.o
a - mxml-search.o
a - mxml-set.o
a - mxml-private.o
a - mxml-string.o
ar: writing libmxml.a
ranlib libmxml.a
gmake[2]: Leaving directory `/export/home/dougm/asterisk/menuselect/mxml'
gcc -o menuselect menuselect.o strcompat.o menuselect_stub.o mxml/libmxml.a
gmake[1]: Leaving directory `/export/home/dougm/asterisk/menuselect'
Generating input for menuselect ...
menuselect/menuselect --check-deps menuselect.makeopts  
build_tools/make_buildopts_h: md5: not found
Generating embedded module rules ...
  [CC] smsq.c -> smsq.o
  [CP] main/strcompat.c -> strcompat.c
  [CC] strcompat.c -> strcompat.o
  [LD] smsq.o strcompat.o -> smsq
  [CC] stereorize.c -> stereorize.o
  [CC] frame.c -> frame.o
  [LD] stereorize.o frame.o -> stereorize
  [CC] streamplayer.c -> streamplayer.o
streamplayer.c: In function `main':
streamplayer.c:85: warning: implicit declaration of function `htons'
  [LD] streamplayer.o -> streamplayer
  [CC] check_expr.c -> check_expr.o
  [CP] main/ast_expr2.c -> ast_expr2.c
  [CC] ast_expr2.c -> ast_expr2.o
  [CP] main/ast_expr2f.c -> ast_expr2f.c
  [CC] ast_expr2f.c -> ast_expr2f.o
  [CP] main/threadstorage.c -> threadstorage.c
  [CC] threadstorage.c -> threadstorage.o
  [CC] clicompat.c -> clicompat.o
  [LD] check_expr.o ast_expr2.o ast_expr2f.o strcompat.o threadstorage.o clicom
pat.o -> check_expr
  [CC] hashtest2.c -> hashtest2.o
  [CP] main/md5.c -> md5.c
  [CC] md5.c -> md5.o
  [CP] main/utils.c -> utils.c
  [CC] utils.c -> utils.o
  [CC] utils.c -> utils.o
  [CP] main/astobj2.c -> astobj2.c
  [CC] astobj2.c -> astobj2.o
  [CP] main/sha1.c -> sha1.c
  [CC] sha1.c -> sha1.o
  [LD] hashtest2.o md5.o utils.o astobj2.o sha1.o strcompat.o threadstorage.o c
licompat.o -> hashtest2
  [CC] hashtest.c -> hashtest.o
  [CP] main/hashtab.c -> hashtab.c
  [CC] hashtab.c -> hashtab.o
  [LD] hashtest.o md5.o hashtab.o utils.o sha1.o strcompat.o threadstorage.o cl
icompat.o -> hashtest
  [CC] astcanary.c -> astcanary.o
  [LD] astcanary.o -> astcanary
  [CC] refcounter.c -> refcounter.o
  [LD] refcounter.o md5.o hashtab.o utils.o sha1.o strcompat.o threadstorage.o
clicompat.o -> refcounter
  [CC] eagi-test.c -> eagi-test.o
  [CC] strcompat.c -> strcompat.o
  [LD] eagi-test.o strcompat.o -> eagi-test
  [CC] eagi-sphinx-test.c -> eagi-sphinx-test.o
In file included from /export/home/dougm/asterisk/include/asterisk.h:21,
                from eagi-sphinx-test.c:30:
/export/home/dougm/asterisk/include/asterisk/autoconfig.h:1165:1: warning: "_FIL
E_OFFSET_BITS" redefined
In file included from /usr/sfw/lib/gcc/i386-pc-solaris2.11/3.4.3/include/stdio.h
:54,
                from eagi-sphinx-test.c:18:
/usr/include/sys/feature_tests.h:209:1: warning: this is the location of the pre
vious definition
...
checking whether the C compiler (gcc -D_REENTRANT -pthreads -I../..//include -pi
pe -Wall -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -g3 -ma
rch=i386 -Wcast-align -DSOLARIS -I../include/solaris-compat -I/opt/ssl/include -
I/usr/local/ssl/include -D_XPG4_2 -O6 ) works... yes
checking whether the C compiler (gcc -D_REENTRANT -pthreads -I../..//include -pi
pe -Wall -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -g3 -ma
rch=i386 -Wcast-align -DSOLARIS -I../include/solaris-compat -I/opt/ssl/include -
I/usr/local/ssl/include -D_XPG4_2 -O6 ) is a cross-compiler... no
checking whether we are using GNU C... yes
checking whether gcc accepts -g... yes
checking how to run the C preprocessor... gcc -E
checking for mawk... nawk
checking host system type... i386-pc-solaris2.11
checking for a BSD compatible install... /usr/bin/ginstall -c
checking for ranlib... ranlib
checking for ar... /usr/bin/ar
checking for tgetent in -ltermcap... yes
checking for termcap.h... no
checking for term.h... yes
checking for curses.h... yes
checking for sys/cdefs.h... no
checking for vis.h... no
checking for issetugid... yes
checking for fgetln... no
checking for strvis... no
checking for strunvis... no
updating cache ./config.cache
creating ./config.status
creating Makefile
creating makelist
creating config.h
In file included from sig.h:47,
                from el.h:107,
                from common.c:51,
                from editline.c:4:
/usr/include/signal.h:95: error: syntax error before '*' token
gmake[2]: *** [editline.o_a] Error 1
gmake[1]: *** [editline/libedit.a] Error 2
gmake: *** [main] Error 2
Comments:By: Doug McCallum (dougm) 2008-10-16 13:20:45

AN additional data point:
The problem seems to be that the token __EXTENSIONS__ isn't getting defined.
The signal.h file sees a token that assumes that 'procset_t' is defined but procset_t needs either __EXTENSIONS__ or _XPG4_2 to not be defined.

By: Leif Madsen (lmadsen) 2008-10-16 13:36:05

I've assigned this to Qwell for now since the reporter mentions how this may be fixed. Please re-assign if necessary.

By: Doug McCallum (dougm) 2008-11-04 10:40:26.000-0600

Not sure if I should add a new problem here or open a new bug, but there is a different failure under Solaris along with the one reported earlier.
  [CC] pbx.c -> pbx.o
pbx.c: In function `ast_load_documentation':
pbx.c:6471: error: `GLOB_BRACE' undeclared (first use in this function)
pbx.c:6471: error: (Each undeclared identifier is reported only once
pbx.c:6471: error: for each function it appears in.)
gmake[1]: *** [pbx.o] Error 1
gmake: *** [main] Error 2

By: Digium Subversion (svnbot) 2008-11-04 11:12:23.000-0600

Repository: asterisk
Revision: 154191

U   trunk/main/pbx.c

------------------------------------------------------------------------
r154191 | seanbright | 2008-11-04 11:12:22 -0600 (Tue, 04 Nov 2008) | 6 lines

GLOB_BRACE is already added to MY_GLOB_FLAGS if it is supported on the
platform.  This should resolve some build errors on Solaris.

(issue ASTERISK-12901)
Reported by: dougm

------------------------------------------------------------------------

http://svn.digium.com/view/asterisk?view=rev&revision=154191

By: Sean Bright (seanbright) 2008-11-04 11:15:22.000-0600

dougm,

Do an 'svn update' and see if that particular error disappears.

By: Doug McCallum (dougm) 2008-11-04 11:17:09.000-0600

The GLOB_BRACE issue has been resolved.  The original issue is still present.
Thanks.

By: Doug McCallum (dougm) 2008-11-05 11:05:49.000-0600

Some additional information.  If I add -D__EXTENSIONS__=1 in makeopts, I can get all the .c files to compile.  The token is defined in solaris-compat/compat.h, but not all the files that would need it defined include that file.
There may be other ways to deal with this, but it compiles this way and I can get to the demo, etc.

By: Jason Parker (jparker) 2009-03-17 13:20:44

I suspect that many or all of these have been fixed.  Can you update Asterisk and attach a new log if it fails?

By: Joshua C. Colp (jcolp) 2009-04-27 15:26:04

As per qwell do these still exist in the updated version?

By: Joshua C. Colp (jcolp) 2009-05-12 11:38:07

Suspending due to lack of response.