Vladimir Prus wrote:
Deane Yang wrote:
Volodya,
Thanks for responding!
When I run bjam (using Boost Build v2) to compile an executable that uses the serialization library, it appears to look for either the wrong version of the library or the right library in the wrong directory.
Here's what I see: I've tried to set up my projects to always use the default settings. So I do not have any explicit setting of either the <link> or <runtime-link> flags anywhere. So all of object files get compiled in the directory
bin/msvc-8.0express/debug/threading-multi
I am therefore guessing that bjam then looks unsuccessfully for a statically linked serialization library in
$(BOOST_ROOT)/bin.v2/msvc-8.0express/debug/threading-multi
That directory contains only a dynamically linked version (so the name does not have the prefix "lib").
Of course, the directory
$(BOOST_ROOT)/bin.v2/msvc-8.0express/debug/link-static/threading-multi
seems to have the desired library.
I'm not sure what's going on.
Let's try again. In the last email I've asked some questions, quoting:
Or the library you already have built? Then how did you built it and how do you link to it, and what's your Jamfile, and what's your command line, and what version of Boost and what version of Boost.Build and of Boost.Jam?
I built the boost serialization libraries by going into the boost directory and doing bjam --v2 serialization In a Jamroot file higher up, I have project : requirements <threading>multi ; In my Jamfile I have something like: exe myprogram : myprogram.cpp ../../vendor/boost//serialization ; I call it by just doing "bjam". I am using whatever I got using cvs, as described in the "Getting Started" page of www.boost.org. I did this within the last week.
I'd need the following information to have any chance to diagnose the problem:
1. You havent't told what's in your Jamfile -- ideal would be an archive containing a minimal project.
I'll try to do that
2. You haven't told how you've built the serialization library.
See above
3. Version of Boost/Boost.Build/Boost.Jam is a mistery to me still. I can *assume* it's RC 1_34_0, but there still people using 1-year-old Boost.Build releases.
See above
4. You did not say what command line was.
See above
5. You did not say what *error* you've got.
The linking of my executable failed, because the serialization library was not found. Unfortunately, I can't reproduce the exact error message right now. I would note that if I insert something like "<runtime-link>static" into the project, then everything works OK.
6. I also want to see the content of your user-config.jam.
using msvc : all ;
- Volodya