[Xapian-tickets] [Xapian] #631: Doesn't build with Sun C++ since C++11 switch

Xapian nobody at xapian.org
Wed Oct 23 04:15:58 BST 2019


#631: Doesn't build with Sun C++ since C++11 switch
--------------------------+-----------------------------
 Reporter:  dmichelsen    |             Owner:  olly
     Type:  defect        |            Status:  assigned
 Priority:  normal        |         Milestone:  1.4.14
Component:  Build system  |           Version:  1.3.1
 Severity:  normal        |        Resolution:
 Keywords:                |        Blocked By:
 Blocking:                |  Operating System:  Solaris
--------------------------+-----------------------------
Changes (by olly):

 * status:  new => assigned
 * milestone:  1.4.x => 1.4.14


Comment:

 I retested and the shared library build still fails with:

 {{{CC: Studio 12.6 Sun C++ 5.15 SunOS_sparc Patch 152715-02 2018/06/08}}}

 I ran configure like so:

 {{{/home/olly/xapian/xapian-core/configure
 CXX=/opt/developerstudio12.6/bin/CC CC=/opt/developerstudio12.6/bin/cc
 MAKE=gmake}}}

 Link-time warnings and errors:

 {{{
 olly at unstable11s [unstable11s]:/var/tmp/olly > gmake
 gmake  all-recursive
 gmake[1]: Entering directory '/var/tmp/olly'
 Making all in .
 gmake[2]: Entering directory '/var/tmp/olly'
 source='/home/olly/xapian/xapian-core/bin/xapian-delve.cc' object='bin
 /xapian-delve.o' libtool=no \
 DEPDIR=.deps depmode=none /bin/sh /home/olly/xapian/xapian-core/depcomp \
 /opt/developerstudio12.6/bin/CC -DHAVE_CONFIG_H -I. -I/home/olly/xapian
 /xapian-core  -I/home/olly/xapian/xapian-core/common -I/home/olly/xapian
 /xapian-core/include -I'./include'  -I/home/olly/xapian/xapian-
 core/languages -Ilanguages -I/home/olly/xapian/xapian-core/queryparser
 -errtags -erroff=oklambdaretmulti,voidretw  -g -std=c++11 -c -o bin
 /xapian-delve.o /home/olly/xapian/xapian-core/bin/xapian-delve.cc
 /bin/sh ./libtool  --tag=CXX   --mode=link /opt/developerstudio12.6/bin/CC
 -errtags -erroff=oklambdaretmulti,voidretw  -g -std=c++11   -o bin/xapian-
 delve bin/xapian-delve.o  libgetopt.la libxapian-1.5.la -lm
 libtool: link: /opt/developerstudio12.6/bin/CC -errtags
 -erroff=oklambdaretmulti,voidretw -g -std=c++11 -o bin/.libs/xapian-delve
 bin/xapian-delve.o  ./.libs/libgetopt.a ./.libs/libxapian-1.5.so -lz
 -luuid -lnsl -lsocket -lm -R/usr/local/lib
 ld: warning: unwind table: file ./.libs/libgetopt.a(getopt.o): section
 .eh_frame%exchange(char**): suspicious InitialLoc value 0: binary search
 table will be incomplete if section requires runtime relocation
 source='/home/olly/xapian/xapian-core/bin/xapian-check.cc' object='bin
 /xapian-check.o' libtool=no \
 DEPDIR=.deps depmode=none /bin/sh /home/olly/xapian/xapian-core/depcomp \
 /opt/developerstudio12.6/bin/CC -DHAVE_CONFIG_H -I. -I/home/olly/xapian
 /xapian-core  -I/home/olly/xapian/xapian-core/common -I/home/olly/xapian
 /xapian-core/include -I'./include'  -I/home/olly/xapian/xapian-
 core/languages -Ilanguages -I/home/olly/xapian/xapian-core/queryparser
 -errtags -erroff=oklambdaretmulti,voidretw  -g -std=c++11 -c -o bin
 /xapian-check.o /home/olly/xapian/xapian-core/bin/xapian-check.cc
 /bin/sh ./libtool  --tag=CXX   --mode=link /opt/developerstudio12.6/bin/CC
 -errtags -erroff=oklambdaretmulti,voidretw  -g -std=c++11   -o bin/xapian-
 check bin/xapian-check.o  libxapian-1.5.la -lm
 libtool: link: /opt/developerstudio12.6/bin/CC -errtags
 -erroff=oklambdaretmulti,voidretw -g -std=c++11 -o bin/.libs/xapian-check
 bin/xapian-check.o  ./.libs/libxapian-1.5.so -lz -luuid -lnsl -lsocket -lm
 -R/usr/local/lib
 source='/home/olly/xapian/xapian-core/bin/xapian-compact.cc' object='bin
 /xapian-compact.o' libtool=no \
 DEPDIR=.deps depmode=none /bin/sh /home/olly/xapian/xapian-core/depcomp \
 /opt/developerstudio12.6/bin/CC -DHAVE_CONFIG_H -I. -I/home/olly/xapian
 /xapian-core  -I/home/olly/xapian/xapian-core/common -I/home/olly/xapian
 /xapian-core/include -I'./include'  -I/home/olly/xapian/xapian-
 core/languages -Ilanguages -I/home/olly/xapian/xapian-core/queryparser
 -errtags -erroff=oklambdaretmulti,voidretw  -g -std=c++11 -c -o bin
 /xapian-compact.o /home/olly/xapian/xapian-core/bin/xapian-compact.cc
 /bin/sh ./libtool  --tag=CXX   --mode=link /opt/developerstudio12.6/bin/CC
 -errtags -erroff=oklambdaretmulti,voidretw  -g -std=c++11   -o bin/xapian-
 compact bin/xapian-compact.o  libgetopt.la libxapian-1.5.la -lm
 libtool: link: /opt/developerstudio12.6/bin/CC -errtags
 -erroff=oklambdaretmulti,voidretw -g -std=c++11 -o bin/.libs/xapian-
 compact bin/xapian-compact.o  ./.libs/libgetopt.a ./.libs/libxapian-1.5.so
 -lz -luuid -lnsl -lsocket -lm -R/usr/local/lib
 source='/home/olly/xapian/xapian-core/bin/xapian-progsrv.cc' object='bin
 /xapian-progsrv.o' libtool=no \
 DEPDIR=.deps depmode=none /bin/sh /home/olly/xapian/xapian-core/depcomp \
 /opt/developerstudio12.6/bin/CC -DHAVE_CONFIG_H -I. -I/home/olly/xapian
 /xapian-core  -I/home/olly/xapian/xapian-core/common -I/home/olly/xapian
 /xapian-core/include -I'./include'  -I/home/olly/xapian/xapian-
 core/languages -Ilanguages -I/home/olly/xapian/xapian-core/queryparser
 -errtags -erroff=oklambdaretmulti,voidretw  -g -std=c++11 -c -o bin
 /xapian-progsrv.o /home/olly/xapian/xapian-core/bin/xapian-progsrv.cc
 /bin/sh ./libtool  --tag=CXX   --mode=link /opt/developerstudio12.6/bin/CC
 -errtags -erroff=oklambdaretmulti,voidretw  -g -std=c++11   -o bin/xapian-
 progsrv bin/xapian-progsrv.o  libgetopt.la libxapian-1.5.la -lm
 libtool: link: /opt/developerstudio12.6/bin/CC -errtags
 -erroff=oklambdaretmulti,voidretw -g -std=c++11 -o bin/.libs/xapian-
 progsrv bin/xapian-progsrv.o  ./.libs/libgetopt.a ./.libs/libxapian-1.5.so
 -lz -luuid -lnsl -lsocket -lm -R/usr/local/lib
 ld: warning: unwind table: file ./.libs/libgetopt.a(getopt.o): section
 .eh_frame%exchange(char**): suspicious InitialLoc value 0: binary search
 table will be incomplete if section requires runtime relocation
 source='/home/olly/xapian/xapian-core/bin/xapian-replicate.cc' object='bin
 /xapian-replicate.o' libtool=no \
 DEPDIR=.deps depmode=none /bin/sh /home/olly/xapian/xapian-core/depcomp \
 /opt/developerstudio12.6/bin/CC -DHAVE_CONFIG_H -I. -I/home/olly/xapian
 /xapian-core  -I/home/olly/xapian/xapian-core/common -I/home/olly/xapian
 /xapian-core/include -I'./include'  -I/home/olly/xapian/xapian-
 core/languages -Ilanguages -I/home/olly/xapian/xapian-core/queryparser
 -errtags -erroff=oklambdaretmulti,voidretw  -g -std=c++11 -c -o bin
 /xapian-replicate.o /home/olly/xapian/xapian-core/bin/xapian-replicate.cc
 /bin/sh ./libtool  --tag=CXX   --mode=link /opt/developerstudio12.6/bin/CC
 -errtags -erroff=oklambdaretmulti,voidretw  -g -std=c++11   -o bin/xapian-
 replicate bin/xapian-replicate.o  libgetopt.la libxapian-1.5.la -lm
 libtool: link: /opt/developerstudio12.6/bin/CC -errtags
 -erroff=oklambdaretmulti,voidretw -g -std=c++11 -o bin/.libs/xapian-
 replicate bin/xapian-replicate.o  ./.libs/libgetopt.a
 ./.libs/libxapian-1.5.so -lz -luuid -lnsl -lsocket -lm -R/usr/local/lib
 ld: fatal: unwind table: file ./.libs/libgetopt.a(getopt.o): section
 .eh_frame%exchange(char**): unexpected negative integer encountered:
 offset 0x40

 gmake[2]: *** [Makefile:2794: bin/xapian-replicate] Error 2
 gmake[2]: Leaving directory '/var/tmp/olly'
 gmake[1]: *** [Makefile:3954: all-recursive] Error 1
 gmake[1]: Leaving directory '/var/tmp/olly'
 gmake: *** [Makefile:1918: all] Error 2
 }}}

 We could auto-disable shared libraries based on the compiler, but it
 requires a lot of reordering of the configure code so given this isn't a
 compiler many people actually use I've taken the easier route and just
 documented the need to configure with `--disable-shared` in `xapian-
 core/INSTALL` in [02fdc5fe44224d93f8444484255a103aa916d77e].  Marking to
 backport to 1.4.x.

--
Ticket URL: <https://trac.xapian.org/ticket/631#comment:16>
Xapian <https://xapian.org/>
Xapian



More information about the Xapian-tickets mailing list