Bison 3.5.92 on IRIX

Bruno Haible <[email protected]>
Newsgroups gmane.comp.parsers.bison.bugs
Message-ID <1739104.9a0AC1EMac@omega>
On IRIX 6.5, the build fails like this:

gmake[2]: Entering directory '/home/bruno/bison-3.5.92/build-n32-gcc'
  CCLD     src/bison
ld32: ERROR   33 : Unresolved text symbol "libintl_dgettext" -- 1st referenced by lib/libbison.a(libbison_a-spawn-pipe.o).
        Use linker option -v to see when and which objects, archives and dsos are loaded.  
ld32: INFO    152: Output file removed because of error.
collect2: ld returned 2 exit status
gmake[2]: *** [Makefile:4135: src/bison] Error 1

More in detail:

$ gmake V=1
gcc -mabi=n32 -std=gnu99   -g -O2  -L/home/bruno/prefix-n32-gcc/lib -L/usr/local/lib -Wl,-rpath,/usr/local/lib -o src/bison src/bison-AnnotationList.o src/bison-InadequacyList.o src/bison-Sbitset.o src/bison-assoc.o src/bison-closure.o src/bison-complain.o src/bison-conflicts.o src/bison-derives.o src/bison-files.o src/bison-fixits.o src/bison-getargs.o src/bison-gram.o src/bison-graphviz.o src/bison-ielr.o src/bison-lalr.o src/bison-location.o src/bison-lr0.o src/bison-main.o src/bison-muscle-tab.o src/bison-named-ref.o src/bison-nullable.o src/bison-output.o src/bison-parse-gram.o src/bison-print-graph.o src/bison-print-xml.o src/bison-print.o src/bison-reader.o src/bison-reduce.o src/bison-relation.o src/bison-scan-code-c.o src/bison-scan-gram-c.o src/bison-scan-skel-c.o src/bison-state
 .o src/bison-symlist.o src/bison-symtab.o src/bison-tables.o src/bison-uniqstr.o      -lintl    -ltextstyle lib/libbison.a 
ld32: ERROR   33 : Unresolved text symbol "libintl_dgettext" -- 1st referenced by lib/libbison.a(libbison_a-spawn-pipe.o).
        Use linker option -v to see when and which objects, archives and dsos are loaded.  
ld32: INFO    152: Output file removed because of error.
collect2: ld returned 2 exit status
gmake: *** [Makefile:4135: src/bison] Error 1

libintl.so exists and defines the symbol 'libintl_dgettext'.

The problem is the order: Since libbison.a depends on libintl, you have
to mention libbison.a *before*, not after, '-lintl'. This patch fixes it.


Fix a link error on IRIX.

* src/local.mk (src_bison_LDADD): Mention libbison.a before, not after, the
system libraries.

diff --git a/src/local.mk b/src/local.mk
index 08737f8..c072d99 100644
--- a/src/local.mk
+++ b/src/local.mk
@@ -117,6 +117,7 @@ BUILT_SOURCES +=                                \
 # definition of libbison, beware that they might expand as flags such as
 # `-lm`.  Keep them here.  Or use a Libtool convenience library.
 src_bison_LDADD =                               \
+  lib/libbison.a                                \
   $(ISNAND_LIBM)                                \
   $(ISNANF_LIBM)                                \
   $(ISNANL_LIBM)                                \
@@ -126,8 +127,7 @@ src_bison_LDADD =                               \
   $(LIBTHREAD)                                  \
   $(LIB_CLOCK_GETTIME)                          \
   $(LIB_GETHRXTIME)                             \
-  $(LIBTEXTSTYLE)                               \
-  lib/libbison.a
+  $(LIBTEXTSTYLE)
 
 
 EXTRA_DIST += %D%/i18n-strings.c
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.