Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 21 May 2012 21:23:12 +0200
From:      Rainer Hurling <rhurlin@gwdg.de>
To:        sunpoet@FreeBSD.org
Cc:        freebsd-ports@freebsd.org
Subject:   graphics/gdal 1.9.0 does not build on CURRENT
Message-ID:  <4FBA9620.3020207@gwdg.de>

next in thread | raw e-mail | index | archive | help
Thanks for the update of graphics/gdal to version 1.9.0.

It builds fine on 9.0 (amd64), but fails on 10.0-CURRENT (amd64):

[..snip..]
libtool: compile:  c++ -O2 -pipe -O2 -fno-strict-aliasing -pipe -msse3 
-Wall -DOGR_ENABLED -I/usr/local/include 
-I/usr/ports/graphics/gdal/work/gdal-1.9.0/port -I/usr/local/include 
-I/usr/local -I/usr/local/include -I/usr/local/include -I/usr/local 
-I/usr/local/include -I/usr/local -I/usr/local/include 
-I/usr/local/include -I/usr/local/include -I/usr/local 
-I/usr/local/include -I/usr -I/usr/include -DHAVE_LIBZ -c 
cpl_recode_iconv.cpp  -fPIC -DPIC -o .libs/cpl_recode_iconv.o
cpl_recode_iconv.cpp: In function 'char* CPLRecodeIconv(const char*, 
const char*, const char*)':
cpl_recode_iconv.cpp:92: error: invalid conversion from 'char**' to 
'const char**'
cpl_recode_iconv.cpp:92: error:   initializing argument 2 of 'size_t 
libiconv(void*, const char**, size_t*, char**, size_t*)'
cpl_recode_iconv.cpp: In function 'char* CPLRecodeFromWCharIconv(const 
wchar_t*, const char*, const char*)':
cpl_recode_iconv.cpp:243: error: invalid conversion from 'char**' to 
'const char**'
cpl_recode_iconv.cpp:243: error:   initializing argument 2 of 'size_t 
libiconv(void*, const char**, size_t*, char**, size_t*)'
gmake[1]: *** [cpl_recode_iconv.lo] Fehler 1
gmake[1]: Leaving directory `/usr/ports/graphics/gdal/work/gdal-1.9.0/port'
gmake: *** [port-target] Fehler 2
*** [do-build] Error code 1
Stop in /usr/ports/graphics/gdal.


It seems there is a portability issue with ICONV_CPP_CONST like it is 
described in port/cpl_recode_iconv.cpp:l76ff ?

/* -------------------------------------------------------------------- */
/*      XXX: There is a portability issue: iconv() function could be    */
/*      declared differently on different platforms. The second         */
/*      argument could be declared as char** (as POSIX defines) or      */
/*      as a const char**. Handle it with the ICONV_CPP_CONST macro 
here.   */
/* -------------------------------------------------------------------- */

Please let me know, if you need more details.

Thanks again,
Rainer


P.S.: ports/166605 should be obsolete now?



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4FBA9620.3020207>