#2940: Compiling Grass-7.0.3 under FreeBSD: tplot directory (with log)
----------------------+-------------------------
  Reporter:  pieside  |      Owner:  grass-dev@…
      Type:  defect   |     Status:  new
  Priority:  normal   |  Milestone:  7.2.2
 Component:  Default  |    Version:  7.2.0
Resolution:           |   Keywords:  FreeBSD
       CPU:  x86-64   |   Platform:  Other Unix
----------------------+-------------------------

Comment (by mmetz):

 Replying to [comment:3 glynn]:
 > Replying to [comment:2 pieside]:
 > > The problems seems to be an old friend:
 > >
 > {{{
 > /home/pierre/tmp/grass7/grass-7.0.3/dist.x86_64-unknown-
 freebsd10.2/lib/libgrass_gis.7.0.3.so: undefined reference to `libiconv'
 > }}}
 >
 > This usually means that it's including <iconv.h> from libiconv but
 linking against the system iconv (which may be part of libc).

 Both the configure tests and the compilation use the same CPPFLAGS
 "-I/usr/local/include", i.e. the libiconv version of iconv.h should be
 found first for both configure and compilation. The problem is that
 configure tests for iconv() include /usr/include/iconv.h from libc despite
 CPPFLAGS while the actual compilation includes /usr/local/include/iconv.h
 from libiconv which requires linking against libiconv.

 >
 > One way to solve issues with multiple library versions is to create
 "include" and "lib" directories, populate them with symlinks to the
 desired versions of the headers and libraries, and use --with-includes=
 and --with-libs= to put those directories at the front of the search path.

 Or ensure that configure tests and compilation use the same order of
 include dirs.

--
Ticket URL: <https://trac.osgeo.org/grass/ticket/2940#comment:14>
GRASS GIS <https://grass.osgeo.org>

_______________________________________________
grass-dev mailing list
grass-dev@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/grass-dev

Reply via email to