ChezSchemeを macOSでビルドした。
./configure --threads make
すると、
gcc -m64 -Wpointer-arith -Wall -Wextra -Werror -O2 -I/opt/X11/include/ -o ../bin/ta6osx/scheme ../boot/ta6osx/kernel.o ../boot/ta6osx/main.o -liconv -lm -lncurses -L/usr/lib
Undefined symbols for architecture x86_64:
"_libiconv", referenced from:
_s_iconv_to_string in kernel.o
_s_iconv_from_string in kernel.o
"_libiconv_close", referenced from:
_s_iconv_close in kernel.o
"_libiconv_open", referenced from:
_s_iconv_open in kernel.o
ld: symbol(s) not found for architecture x86_64
というエラーが返る。/usr/lib/libiconv.2.4.0.dylib ではだめなもよう。
そこでふと、macport版のlibiconvではどうかと
LDFLAGS="-L/opt/local/lib" ./configure --threads LDFLAGS="-L/opt/local/lib" make
とするとうまくいった。
あとで調べると、Error linking libiconv on OSX によると、macOS標準のlibiconvが古すぎるからだめ、とのこと。なるほど。