[OpenAFS] new difficulties to build OpenAFS 1.8.0 stable on Solaris X86 11

Michael Meffie mmeffie@sinenomine.net
Thu, 19 Apr 2018 09:36:58 -0400


On Thu, 19 Apr 2018 06:15:53 -0500
Benjamin Kaduk <kaduk@mit.edu> wrote:

> On Thu, Apr 19, 2018 at 11:20:17AM +0200, Karl Behler wrote:
> > Dear All,
> > 
> > I'm sorry to bother with some exotic issue.
> > 
> > I've checked out openafs_stable_1.8.0 from the github and under Linux 
> > the build was just straight. (To prove my build scripts are sane.)
> > 
> > Using these - in principle - same build scripts in our Solaris 
> > environment fails with a strange eval syntax error in libtool already 
> > when making the first library libroken
> > 
> > "/afs/ipp/home/k/kcb/src/openafs/1.8.0/include/roken-common.h", line 463: warning:  attribute "format" is unknown, ignored
> > "/afs/ipp/home/k/kcb/src/openafs/1.8.0/include/roken-common.h", line 475: warning:  attribute "format" is unknown, ignored
> > "/afs/ipp/home/k/kcb/src/openafs/1.8.0/include/roken.h", line 501: warning:  attribute "format" is unknown, ignored
> > "/afs/ipp/home/k/kcb/src/openafs/1.8.0/include/roken.h", line 510: warning:  attribute "format" is unknown, ignored
> > /bin/sh ../../libtool --quiet --mode=compile --tag=CC /opt/developerstudio12.5/bin/cc   -m64  -O -dy -Bdynamic -m64  -I/afs/ipp/home/k/kcb/src/openafs/1.8.0/src/config -I/afs/ipp/home/k/kcb/src/openafs/1.8.0/include -I. -I.     -mt -DAFS_PTHREAD_ENV  -o snprintf.lo -c /afs/ipp/home/k/kcb/src/openafs/1.8.0/src/external/heimdal/roken/snprintf.c
> > "/afs/ipp/home/k/kcb/src/openafs/1.8.0/include/roken-common.h", line 463: warning:  attribute "format" is unknown, ignored
> > "/afs/ipp/home/k/kcb/src/openafs/1.8.0/include/roken-common.h", line 475: warning:  attribute "format" is unknown, ignored
> > "/afs/ipp/home/k/kcb/src/openafs/1.8.0/include/roken.h", line 501: warning:  attribute "format" is unknown, ignored
> > "/afs/ipp/home/k/kcb/src/openafs/1.8.0/include/roken.h", line 510: warning:  attribute "format" is unknown, ignored
> > /usr/ccs/bin/ginstall -c -m 644 /afs/ipp/home/k/kcb/src/openafs/1.8.0/src/external/heimdal/roken/err.hin err.h
> > /bin/sh ../../libtool --quiet --mode=compile --tag=CC /opt/developerstudio12.5/bin/cc   -m64  -O -dy -Bdynamic -m64  -I/afs/ipp/home/k/kcb/src/openafs/1.8.0/src/config -I/afs/ipp/home/k/kcb/src/openafs/1.8.0/include -I. -I.     -mt -DAFS_PTHREAD_ENV  -o warnerr.lo -c /afs/ipp/home/k/kcb/src/openafs/1.8.0/src/external/heimdal/roken/warnerr.c
> > /bin/sh ../../libtool --quiet --mode=link --tag=CC /opt/developerstudio12.5/bin/cc -rpath /usr/local/lib   -L/afs/ipp/home/k/kcb/src/openafs/1.8.0/lib -L/afs/ipp/home/k/kcb/src/openafs/1.8.0/lib  -O   -m64  -O -dy -Bdynamic -m64  -I/afs/ipp/home/k/kcb/src/openafs/1.8.0/src/config -I/afs/ipp/home/k/kcb/src/openafs/1.8.0/include -I. -I.     -mt -DAFS_PTHREAD_ENV  -o librokenafs.la -version-info 2:0:0 -export-symbols-regex "($(sed -e 's/^/^/' -e 's/$/$/' ./librokenafs.la.sym | tr '\n' '|' | sed -e 's/|$//'))" ecalloc.lo emalloc.lo erealloc.lo flock.lo base64.lo cloexec.lo ct.lo hex.lo issuid.lo mkdir.lo net_read.lo net_write.lo socket.lo snprintf.lo warnerr.lo
> > :( ../../libtool: eval: line 1083: syntax error near unexpected token `|'
> > :( ../../libtool: eval: line 1083: `/usr/ccs/bin/nm -p  .libs/ecalloc.o .libs/emalloc.o .libs/erealloc.o .libs/flock.o .libs/base64.o .libs/cloexec.o .libs/ct.o .libs/hex.o .libs/issuid.o .libs/mkdir.o .libs/net_read.o .libs/net_write.o .libs/socket.o .libs/snprintf.o .libs/warnerr.o   |  | /usr/ccs/bin/gsed 's/.* //' | sort | uniq > .libs/librokenafs.exp'
> > gmake[3]: *** [librokenafs.la] Error 2
> > gmake[3]: Leaving directory `/afs/ipp-garching.mpg.de/home/k/kcb/src/openafs/1.8.0/src/roken'
> > gmake[2]: *** [roken] Error 2
> > gmake[2]: Leaving directory `/afs/ipp-garching.mpg.de/home/k/kcb/src/openafs/1.8.0'
> > gmake[1]: *** [build] Error 2
> > gmake[1]: Leaving directory `/afs/ipp-garching.mpg.de/home/k/kcb/src/openafs/1.8.0'
> > gmake: *** [all] Error 2
> > 
> > (The smilies have been inserted by me :(
> > I've tried various regen's, configure's etc. but no clue what's wrong.
> > Any idea?
> 
> There's a stack of changes in gerrit to help with these issues.
> https://gerrit.openafs.org/#/c/12956/ gets the warnings about
> attribute 'format', and https://gerrit.openafs.org/12944 should
> address the actual fatal error that's hidden in there.

Hello Karl,

I think you may be hitting a issue with libtool on Solaris due to a fix to nm
supplied with Solaris.  Solaris 11.3 introduced a change in the nm utility.
The output of nm -p was fixed to print the correct symbol type for
uninitialized common variables, which broke the GNU libtool symbol table
detection The bug has been reported to the libtool project, but a fix is just
one line, but not been released last time I checked.

Here's the libtool bug report. (See the attached patch)

  http://lists.gnu.org/archive/html/bug-libtool/2016-01/msg00000.html


I think the options are to fix /usr/share/aclocal/libtool.m4 or to use the GNU
version of nm.  The patch to do the later was submitted by Andrew as
https://gerrit.openafs.org/#/c/12945 and was recently merged on the master
branch.  The other gerrit 12944 fixes the fallout from the error, making it
hard to see what actually happened.

Thanks,
Mike


-- 
Michael Meffie <mmeffie@sinenomine.net>