Boost logo

Boost Users :

Subject: Re: [Boost-users] I can't build boost!
From: Vladimir Prus (vladimir_at_[hidden])
Date: 2009-05-14 16:57:10


Robert Dailey wrote:

> On Thu, May 14, 2009 at 2:24 PM, Vladimir Prus <vladimir_at_[hidden]>wrote:
>
>> Robert Dailey wrote:
>>
>> > On Thu, May 14, 2009 at 1:45 PM, Zeljko Vrba <zvrba_at_[hidden]> wrote:
>> >
>> >> On Thu, May 14, 2009 at 01:38:35PM -0500, Robert Dailey wrote:
>> >> >
>> >> > Sorry to rush this, but I'm completely blocked until I can build boost
>> >> with
>> >> > reasonable library names on Windows. Can anyone help me figure out
>> what I
>> >> > need to do to get the library names generated without any mangling?
>> >> >
>> >> Sorry for jumping into the discussion, but I'm curious.. You probably
>> do
>> >> not
>> >> build boost every day, so why don't you just manually rename or copy the
>> >> resulting lib files to some sane names?
>> >
>> >
>> > Because if I decide to use shared libraries, doing so will prevent the
>> > import libraries from finding their corresponding shared library. Not to
>> > mention that this is tedious to do. I would have to do this each time I
>> > upgrade boost.
>> >
>> > @Valdimir
>> >
>> > I apologize, I must not be communicating with you in the same language. I
>> > thought this would be simple to explain. Let me try to explain this with
>> as
>> > many details as I can just to make sure I'm clear. When I built boost
>> 1.38
>> > for Windows x86 using VS9, I used the following command line:
>> >
>> > bjam --toolset=msvc --layout=system link=shared threading=multi release
>> > debug stage
>> > *
>> > *
>> > When I did this, my library names looked like this (For the
>> Boost.Filesystem
>> > library):
>> >
>> > boost_filesystem-mt-gd.lib
>> > boost_filesystem-mt.lib
>> >
>> > Everything worked just fine. The reason why I used --layout=system was so
>> > that the library names were more simplified and did not contain
>> information
>> > like the version of boost used.
>> >
>> > However, when I try the very same command line with Boost 1.39 I get the
>> > errors I posted earlier. I can't explain this any simpler than I am. I am
>> > merely a user of boost, I do not have the domain knowledge to delve into
>> > Boost.Build, nor do I want to learn it. My goal is to build boost the way
>> I
>> > want, not to learn a new build system. I'm already a bit upset that this
>> is
>> > turning out to be so complicated, I just want it to work like it is
>> supposed
>> > to.
>>
>> Because we go any further: do you know what 'patch file' is and what to do
>> with it?
>
>
> Yes, I did not mean to imply that I was that clueless lol. I just don't know
> squat about Boost.Build, that's all.

No offense intended -- many people don't know, and there are alternatives. Can
you please apply the attached, replace --layout=system with --layout=tagged
and try again? You should get the same results that --layout=system had in 1.38.

>
> Are you implying that this is a bug in Boost.Build (or Boost itself) and
> that a patch has been made to fix it?

It is not a bug -- system layout was changed on the purpose and will stay this
way. It's just everybody has different requirements and desired naming.

- Volodya




Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net