The recent change to `configure' makes it use `pkg-config' to add -L and -I flags for libffi. But those should flags be added consistently; that is, you should end up with a build that uses `libiconv' from macports.
Did you run `configure' in a fresh build directory? If not, maybe you have files leftover from a previous build that had different flags from `configure'? If not, can you show the compile line for "string.c"? At Thu, 21 Apr 2011 22:01:31 -0400, Eric Dobson wrote: > I don't have any *FLAGS variables set in my environment when I run configure > or > make. But I do have libiconv installed through macports. It was out of date, > and I upgraded it, but now I am getting a different message: > > gcc -o Racket.framework/Versions/5.1.1.3/Racket -m32 -pthread -framework > CoreFoundation -dynamiclib -all_load libracket.a libmzgc.a -ldl -lm -liconv > -L/opt/local/lib -lffi > ld: warning: in /opt/local/lib/libiconv.dylib, file was built for unsupported > file format which is not the architecture being linked (i386) > Undefined symbols: > "_iconv_close", referenced from: > _do_convert in libracket.a(string.o) > _do_convert in libracket.a(string.o) > _do_convert in libracket.a(string.o) > _string_to_from_locale in libracket.a(string.o) > _string_to_from_locale in libracket.a(string.o) > _string_to_from_locale in libracket.a(string.o) > _close_converter 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) > _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 > collect2: ld returned 1 exit status > > (Note the warning about a different architecture.) > > I assume that If I tell it to use the system version of iconv, things will > work > out. But how do I tell it to ignore the bad version? > > -Eric > > > > On Apr 21, 2011, at 9:48 PM, Matthew Flatt wrote: > > > It looke like you have `-L/opt/local/lib' in your LDFLAGS > > configuration. Do you also have `-I/opt/local/include' in CPPFLAGS? > > > > You machine is probably like mine, where you have two installations of > > libiconv, and this error happens when the C headers of one installation > > get mixed with the lib of the other. > > > > At Thu, 21 Apr 2011 21:42:54 -0400, Eric Dobson wrote: > >> I tried to build the git HEAD today and ran into problems. During the make > >> process, it fails to create the framework with the following error message: > >> > >> gcc -o Racket.framework/Versions/5.1.1.3/Racket -m32 -pthread -framework > >> CoreFoundation -dynamiclib -all_load libracket.a libmzgc.a -ldl -lm > -liconv > >> -L/opt/local/lib -lffi > >> Undefined symbols: > >> "_iconv_close", referenced from: > >> _do_convert in libracket.a(string.o) > >> _do_convert in libracket.a(string.o) > >> _do_convert in libracket.a(string.o) > >> _string_to_from_locale in libracket.a(string.o) > >> _string_to_from_locale in libracket.a(string.o) > >> _string_to_from_locale in libracket.a(string.o) > >> _close_converter 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) > >> _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 > >> collect2: ld returned 1 exit status > >> > >> Does anyone know what might cause this? > >> > >> Thanks, > >> Eric > >> > >> > >> _________________________________________________ > >> For list-related administrative tasks: > >> http://lists.racket-lang.org/listinfo/dev _________________________________________________ For list-related administrative tasks: http://lists.racket-lang.org/listinfo/dev