Re: [racket-dev] Errors with Racket on OS X 10.7 64bit

2011-09-08 Thread Matthew Flatt
At Wed, 7 Sep 2011 21:47:17 -0700, Eric Dobson wrote:
 I regularly build racket from HEAD on OS X with no problems, but
 tonight I decided to try the 64 bit version and couldn't get it to
 compile. The error I got was:
 
 Undefined symbols for architecture x86_64:
   _iconv_close, referenced from:
   _close_converter in libracket.a(string.o)
   _scheme_close_converter in libracket.a(string.o)
   _do_convert in libracket.a(string.o)
   _byte_string_close_converter in libracket.a(string.o)
   _string_to_from_locale in libracket.a(string.o)
   _iconv_open, referenced from:
   _do_convert in libracket.a(string.o)
   _string_to_from_locale in libracket.a(string.o)
   _scheme_open_converter in libracket.a(string.o)
   _iconv, referenced from:
   _do_convert in libracket.a(string.o)
 ld: symbol(s) not found for architecture x86_64
 collect2: ld returned 1 exit status
 make[4]: *** [Racket.framework/Versions/5.1.3.6/Racket] Error 1
 
 The command I ran to install it was
 
 mkdir build  cd build  ../configure --disable-docs --enable-mac64
  make -j2  make install -j2
 
 Is there something I am missing, or is it just broken currently?

That problem happens when the build attempts to use iconv headers from
the system and iconv libraries from MacPorts.

Since (it appears) you have libffi from MacPorts, `-L/opt/local/lib'
gets added to the link line, while there's no `-I/opt/local/include'
during compile --- only the libffi-specific
`-I/opt/local/lib/libffi-3.0.9/include', so that creates a mismatch for
`-liconv'.

The simplest solution is to configure with `--disable-libffi', which
causes the build to use its own copy of libffi. I'm not sure whether
the `configure' script should be doing something different to avoid the
iconv problem automatically.

_
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev


[racket-dev] Errors with Racket on OS X 10.7 64bit

2011-09-07 Thread Eric Dobson
I regularly build racket from HEAD on OS X with no problems, but
tonight I decided to try the 64 bit version and couldn't get it to
compile. The error I got was:

Undefined symbols for architecture x86_64:
  _iconv_close, referenced from:
  _close_converter in libracket.a(string.o)
  _scheme_close_converter in libracket.a(string.o)
  _do_convert in libracket.a(string.o)
  _byte_string_close_converter in libracket.a(string.o)
  _string_to_from_locale in libracket.a(string.o)
  _iconv_open, referenced from:
  _do_convert in libracket.a(string.o)
  _string_to_from_locale in libracket.a(string.o)
  _scheme_open_converter in libracket.a(string.o)
  _iconv, referenced from:
  _do_convert in libracket.a(string.o)
ld: symbol(s) not found for architecture x86_64
collect2: ld returned 1 exit status
make[4]: *** [Racket.framework/Versions/5.1.3.6/Racket] Error 1

The command I ran to install it was

mkdir build  cd build  ../configure --disable-docs --enable-mac64
 make -j2  make install -j2

Is there something I am missing, or is it just broken currently?

-Eric


Full output is attached:


dev-out
Description: Binary data
_
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev