> I did not test this
> patch against msvc, but the previous version did work (the
> boost_config.h one).

I think it is a msvc problem indeed because I don't remember having it
with mingw.

This is indeed only with msvc. I guess you know the reason but I can
explain again:

With msvc, boost employs a automatic linking mechanism using $progma
directive (http://www.boost.org/more/getting_started.html#auto-link).
As a result, whenever a boost header file is included, the related
boost library will be linked. This is nice but only work when boost
libraries are separately installed (usually not the case), and only
work on windows/msvc (borland c++ etc also do this).

The walkaround is to use that BOOST_ALL_NO_LIB which is now in
BUILDDIR/boost/config.h (check it!). All source files (boost, and lyx)
need to know this so boost/config.h should be in
BUILDDIR/common/config.h.

It is true that scons use 'auto' for boost by default, and will use
detected ones if found. But you will see from scons output which ones
are used. If you look at scons output, and lyx_scons.log, and see no
sign of boost-whatever.lib, then the inclusion of BOOST_ALL_NO_LIB is
wrong at some stage. To test this, you will have to remove the whole
debug directory (some of the libs might be compiled without
BOOST_ALL_NO_LIB before) and start fresh.

Cheers,
Bo

Reply via email to