Is the place to fix this in ../include/make/Platform.make?

Michael
____________________
C. Michael Barton
Director, Center for Social Dynamics & Complexity
Professor of Anthropology, School of Human Evolution & Social Change
Head, Graduate Faculty in Complex Adaptive Systems Science
Arizona State University

voice:  480-965-6262 (SHESC), 480-965-8130/727-9746 (CSDC)
fax: 480-965-7671 (SHESC),  480-727-0709 (CSDC)
www: http://www.public.asu.edu/~cmbarton, http://csdc.asu.edu















On Aug 4, 2017, at 3:50 PM, Eric Hutton 
<hutton.e...@gmail.com<mailto:hutton.e...@gmail.com>> wrote:

Hi Michael

I found that if I manually add linker flags (like "-L$PREFIX/lib -liconv") I 
was able to get rid of these errors. I also notice that I had to append them to 
the end of the compile command (or at least after things like 
"-lgrass_gis.7.2.0" - I guess it has to do with the order that the compiler 
looks at libraries to resolve sysbols). Then, at runtime $PREFIX/lib needed to 
appear in the LD_LIBRARY_PATH_VAR when running the tests.

I'm not sure of the best way to fix this within the grass build system (simply 
adding the link flags to LDFLAGS didn't do the trick). Perhaps tweaking 
Rules.make and the like would do the trick? I think the basic problem is that 
conda does the entire build within a temporary folder that contains 
installations of all the dependencies and that this temporary folder is not 
added to all the necessary places.

Eric


On Fri, Aug 4, 2017 at 3:05 PM Michael Barton 
<michael.bar...@asu.edu<mailto:michael.bar...@asu.edu>> wrote:
After a tedious set of tests, I can say that GRASS will not build with ANY 
dependency from Anaconda except SQLite. That is, I went through the 
dependencies one-by-one and replaced the path to a Framework version with an 
Anaconda version in my configure string. I did a make clean between each build 
attempt.

All the versions are close (secondary or tertiary version number) or identical 
between William's framework builds and those in Anaconda.

For FreeType and Cairo, the errors of the type I posted yesterday

ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

For the other dependencies, the errors are that the appropriate library cannot 
be found, like the following for fftw:

dyld: Library not loaded: @rpath/libfftw3.3.dylib
  Referenced from: 
/Users/cmbarton/grass_source/trunk/dist.x86_64-apple-darwin16.7.0/lib/libgrass_gmath.7.3.svn.dylib
  Reason: image not found

It seems to me like there has to be some kind of systematic reason for this not 
to work. Something hardwired in a key makefile or something. The Anaconda 
packages are all current builds of normal dependencies.

I am even doing it in an environment in which /Applications/anaconda/bin is 
first in my PATH (which works fine if the dependencies are Frameworks).

Any thoughts on this?

Michael
____________________
C. Michael Barton
Director, Center for Social Dynamics & Complexity
Professor of Anthropology, School of Human Evolution & Social Change
Head, Graduate Faculty in Complex Adaptive Systems Science
Arizona State University

voice:  480-965-6262<tel:(480)%20965-6262> (SHESC), 
480-965-8130<tel:(480)%20965-8130>/727-9746 (CSDC)
fax: 480-965-7671<tel:(480)%20965-7671> (SHESC),  
480-727-0709<tel:(480)%20727-0709> (CSDC)
www: 
http://www.public.asu.edu/~cmbarton<https://urldefense.proofpoint.com/v2/url?u=http-3A__www.public.asu.edu_-7Ecmbarton&d=DwMFaQ&c=l45AxH-kUV29SRQusp9vYR0n1GycN4_2jInuKy6zbqQ&r=lk-7X7CEOMDN8GaGVhiDsuO6gEp1wbG6nfT1XEEEtR0&m=KtrgOgv-4RMiEJEdKKQg5Z_ZL4pv8gJw3U0lH7fV_jg&s=LIHaJSGN6aEh018lfLuD_oohvcwC4GRCW2pleRj90HE&e=>,
 
http://csdc.asu.edu<https://urldefense.proofpoint.com/v2/url?u=http-3A__csdc.asu.edu&d=DwMFaQ&c=l45AxH-kUV29SRQusp9vYR0n1GycN4_2jInuKy6zbqQ&r=lk-7X7CEOMDN8GaGVhiDsuO6gEp1wbG6nfT1XEEEtR0&m=KtrgOgv-4RMiEJEdKKQg5Z_ZL4pv8gJw3U0lH7fV_jg&s=ZZ_j-P8_GLz4WT29WIipvPXFuAZoZlYUntcjvNtYEOs&e=>















On Aug 4, 2017, at 12:56 AM, Moritz Lennert 
<mlenn...@club.worldonline.be<mailto:mlenn...@club.worldonline.be>> wrote:

On 04/08/17 00:33, Vaclav Petras wrote:
Well, the error (below) suggests that wrong library is either linked or 
included. You need to go through the -L and -I paths and see if you need to set 
one of these differently or add additional one for iconv. I don't see how to 
set this through ./configure (I don't see any --with-iconv-includes= or 
--with-iconv-libs=), but you can start by editing the Makefiles or the command 
itself and changing -L and -I directly.
Undefined symbols for architecture x86_64:
  "_iconv", referenced from:
      _draw_main in text3.o
  "_iconv_close", referenced from:
      _draw_main in text3.o
  "_iconv_open", referenced from:
      _draw_main in text3.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

Just guessing: Could the error be linked to the use of clang ? Have you tried 
with gcc ?

Moritz


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

Reply via email to