Subject: Re: [Boost-bugs] [Boost C++ Libraries] #4893: boost_serialization link error under msvc 9.0
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2010-12-06 19:44:03
#4893: boost_serialization link error under msvc 9.0
-------------------------------+--------------------------------------------
Reporter: anonymous | Owner: ramey
Type: Bugs | Status: closed
Milestone: To Be Determined | Component: serialization
Version: Boost 1.45.0 | Severity: Problem
Resolution: invalid | Keywords:
-------------------------------+--------------------------------------------
Changes (by ramey):
* status: reopened => closed
* resolution: => invalid
Comment:
1) It looks like your creating a DLL boost_serialization-vc90-mt-gd-
1_45.dll
with import library boost_serialization-vc90-mt-gd-1_45.lib but trying to
link statically with it libboost_serialization-vc90-mt-gd-1_45.lib. This
can never work and that's why the names are different - just to prevent
this from being possible.
2) This is better, you're creating a static library
libboost_serialization-vc90-sgd-1_45.lib as a single threaded library, but
linking a main program compiled with multi-threaded code. That's why it's
looking for with a libboost_serialization-vc90-mt-sgd-1_45.lib) This can
work, but it also crash for no apparent reason. The auto link in
preventing your from creating this type of problem.
3) This overrides all the checking above so your application might SEEM to
work but can fail in a catestrophic and unpredictable way.
Suggestion. Make sure your main program and the libraries are built with
the same settings.
I don't know why the other libraries worked - maybe the main program had
different settings or maybe the library was built with different settings.
I can't speak to that.
Robert Ramey
-- Ticket URL: <https://svn.boost.org/trac/boost/ticket/4893#comment:6> Boost C++ Libraries <http://www.boost.org/> Boost provides free peer-reviewed portable C++ source libraries.
This archive was generated by hypermail 2.1.7 : 2017-02-16 18:50:05 UTC