[freetds] 0.63 Release Candidate 2

James K. Lowden jklowden at schemamania.org
Thu Dec 2 08:07:31 EST 2004


Martin Spott <Martin.Spott at uni-duisburg.de> wrote:
> To ease things wouldn't it make sense to link libtds_objects and
> libreplacements directly into libtds - be the latter shared or not ?

Hi Martin, 

libtds_objects and libreplacements are in libtds.  At least, that's what
Makefile intends, and that's what most linkers accomplish.  

This is in src/tds/Makefile.am:

libtds_la_LIBADD 	= libtds_objects.la \
			  $(NETWORK_LIBS) \
			  $(LIBICONV) \
			  ../replacements/libreplacements.la \
			  $(FREETDS_LIBGCC)

However, that might be a mistake.  From the Automake manual:

   For each library, the `LIBRARY_LIBADD' variable contains the names
of extra libtool objects (`.lo' files) to add to the shared library.
The `LIBRARY_LDFLAGS' variable contains any additional libtool flags,
such as `-version-info' or `-static'.

I note that the troublemakers are are the .la items, and the manual says
to use .lo.  Maybe it should be:

libtds_la_LIBADD 	= libtds_objects.lo \
			  $(NETWORK_LIBS) \
			  $(LIBICONV) \
			  ../replacements/libreplacements.lo \
			  $(FREETDS_LIBGCC)

You're set up to build from CVS, aren't you?  Do you want to give that a
try, and see if it works better?  

--jkl


More information about the FreeTDS mailing list