r14833 - gnucash/trunk/packaging/win32 - Build Guile and GnuCash by `make LDFLAGS="$SOME_FLAGS -no-undefined"'

Christian Stimming stimming at tuhh.de
Tue Sep 12 10:31:15 EDT 2006

Hash: SHA1

Derek Atkins schrieb:
>>>> Build Guile and GnuCash by `make LDFLAGS="$SOME_FLAGS -no-undefined"'
>>> Why do we need -no-undefined?   We shouldn't need that.  And
>>> guile builds just fine without it.
>> "we" don't need "-no-undefined" if and only if you are not on Windows/mingw.
> I was just saying that guile built just fine on my win32 system..  

You mean the guile build that was run by install.sh? That's no surprise:
install.sh added the -no-undefined flag directly to LIBADD in the Makefiles.

Andi simply moved the addition of -no-undefined from file-editing in
install.sh to command line specification at make invocation. In either
case it had and has to be added by ourselves.

> I
> haven't tried gnucash...  But I bet adding -no-undefined in LDFLAGS is
> probably the wrong thing, because it could cause configure to fail.

Right, that's why we added it at make invocation and not at ./configure
invocation. (Did you actually Read The Fine Diff?)

>> Iff you are on windows/mingw, each and every LTLIBRARY needs to be
>> linked by libtool with the -no-undefined argument so that libtool will
>> actually create a DLL.
> Hmm..

and see the explanation of AC_LIBTOOL_WIN32_DLL:

    This macro should be used if the package has been ported to build
clean dlls on win32 platforms. (...) If this macro is not used, libtool
will assume that the package libraries are not dll clean and will build
only static libraries on win32 hosts.

    This macro must be called before AC_PROG_LIBTOOL, and provision must
be made to pass -no-undefined to libtool in link mode from the package
Makefile. (...)

Version: GnuPG v1.4.2.1 (MingW32)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org


More information about the gnucash-devel mailing list