Wednesday, July 27, 2005

Subversion Bug of libintl_dgettext

> /usr/local/bin/msgfmt -o subversion/po/es.mo subversion/po/es.po
> cd subversion/libsvn_subr && /bin/bash /usr/src/svn/libtool --silent --mode=link cc -g -g
> -DNEON_ZLIB -DNEON_SSL -R/usr/local/db42/lib -L/usr/local/db42/lib -L/usr/local/lib -rpath
> /usr/local/svn11/lib -o libsvn_subr-1.la -no-undefined auth.lo cmdline.lo config.lo config_auth.lo
> config_file.lo config_win.lo date.lo error.lo hash.lo io.lo md5.lo opt.lo path.lo pool.lo
> quoprint.lo sorts.lo stream.lo subst.lo svn_base64.lo svn_string.lo target.lo time.lo utf.lo
> utf_validate.lo validate.lo xml.lo /usr/local/lib/libaprutil-0.la -ldb -lexpat
> /usr/local/lib/libapr-0.la -lsendfile -lrt -lm -lsocket -lnsl -lresolv -lpthread -ldl -lsocket
> "subversion/svnserve/main.c", line 492: warning: statement not reached
> "subversion/clients/cmdline/util.c", line 398: warning: statement not reached
> Undefined first referenced
> symbol in file
> libintl_bindtextdomain cmdline.lo
> libintl_dgettext opt.lo
> libintl_textdomain cmdline.lo
> ld: fatal: Symbol referencing errors. No output written to .libs/libsvn_subr-1.so.0.0.0

I think Solaris needs to link against libintl but I don't see and
-lintl in your link command, I guess that's a bug in the new nls
stuff. You could try

$ ./configure --disable-nls
or
$ LDFLAGS='-lintl' ./configure
or
$ make EXTRA_LDFLAGS='-lintl'

So the steps to follow are

1. sh ./autogen.sh ( played around with build/buildcheck.sh lt_pversion=1.5)
2. ./configure --disable-shared --diable-nls prefix=
3. make
4, make install

-kalyan

No comments: