[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Groff 1.21] make failed on Solaris 10 on SPARC(sun4v)
From: |
Werner LEMBERG |
Subject: |
Re: [Groff 1.21] make failed on Solaris 10 on SPARC(sun4v) |
Date: |
Mon, 20 Feb 2012 09:51:40 +0100 (CET) |
This is what you get during compilation:
preconv.cpp:
In function 'void conversion_iconv(FILE*, const string&, char*)':
preconv.cpp:678:29: error:
invalid conversion from 'const char**' to 'char**'
/usr/include/iconv.h:23:15: error:
initializing argument 2 of
'size_t iconv(iconv_t, char**, size_t*, char**, size_t*)'
However, this is what you get during configuration:
configure:8771: gcc -o conftest -g -O2 conftest.c >&5
conftest.c: In function 'main':
conftest.c:58:29: warning:
passing argument 2 of 'iconv' from incompatible pointer type
/usr/include/iconv.h:27:15: note:
expected 'const char **' but argument is of type 'char **'
Looking into the Solaris source, I see that the definition of iconv
differs depending on the preprocessor symbol `_XPG6'. I suspect that
gcc on Solaris doesn't set it, while g++ does.
Please try the patch below, then call `autoconf' so that the configure
script gets regenerated.
Werner
======================================================================
--- configure.ac.old 2011-03-22 03:58:05.000000000 +0100
+++ configure.ac 2012-02-20 09:49:31.000000000 +0100
@@ -115,7 +115,9 @@
# checks for libraries
GROFF_LIBC
GROFF_LIBM
+AC_LANG_PUSH([C++])
AM_ICONV
+AC_LANG_POP([C++])
# we need LIBEXT
AC_SUBST([LIBEXT],[$acl_libext])