Gentleones,
I just tried to turn on SMB tonight and discovered that nmbd fails to launch because, according to the logs:
[2008/12/03 22:56:29, 0] /SourceCache/samba/samba-187.4/samba/source/nmbd/nmbd.c:main(695)
Netbios nameserver version 3.0.25b-apple started.
Copyright Andrew Tridgell and the Samba Team 1992-2007
dyld: lazy symbol binding failed: Symbol not found: _iconv_open
Referenced from: /usr/sbin/nmbd
Expected in: /usr/local/lib/libiconv.2.dylib
dyld: Symbol not found: _iconv_open
Referenced from: /usr/sbin/nmbd
Expected in: /usr/local/lib/libiconv.2.dylib
In /usr/local/lib, I have:
-rw-r--r-- 1 root wheel 987544 Nov 2 18:49 libiconv.2.2.0.dylib
-rw-r--r-- 1 root wheel 1094456 Dec 3 22:22 libiconv.2.4.0.dylib
lrwxr-xr-x 1 root wheel 20 Dec 3 22:27 libiconv.2.dylib -> libiconv.2.4.0.dylib
lrwxr-xr-x 1 root wheel 20 Sep 18 12:13 libiconv.2.dylib.old -> libiconv.2.4.0.dylib
-rw-r--r-- 1 root wheel 1447328 Dec 3 22:22 libiconv.a
lrwxr-xr-x 1 root wheel 20 Dec 3 22:22 libiconv.dylib -> libiconv.2.4.0.dylib
-rw-r--r-- 1 root wheel 811 Dec 3 22:22 libiconv.la
I can't remember why I went to libiconv 2.4.0 (which is libiconv1.12, I think--is there any method to the versioning here?). And changing the symlink to point at the 2.2.0 file causes everything to barf, e.g.:
shr-g5:lib admin$ man ln
dyld: Library not loaded: /usr/lib/libiconv.2.dylib
Referenced from: /bin/sh
Reason: Incompatible library version: sh requires version 7.0.0 or later, but libiconv.2.dylib provides version 5.0.0
fgets: No such file or directory
Error reading man page /usr/share/man/man1/ln.1.gz
No manual entry for ln
So 2.4.0 it is. But... what is wrong? Why isn't _iconv_open found? It appears that it "make clean/configure/make/make install"s just fine...
Argh.
Thanks in advance!
Bill