Boost logo

Boost-Build :

Subject: Re: [Boost-build] Baffling error message
From: Steven Watanabe (watanabesj_at_[hidden])
Date: 2011-04-01 11:13:03


AMDG

On 04/01/2011 07:21 AM, Dave Abrahams wrote:
> At Fri, 01 Apr 2011 07:08:26 -0700,
> Steven Watanabe wrote:
>>
>> On 04/01/2011 05:31 AM, Dave Abrahams wrote:
>>>
>>> Can anyone explain this error for me, and help me avoid it? The
>>> command arguments are given here:
>>>
>>> *** in s:\: executing '['s:\\bjam.exe', '--user-config=I:\\user-config.jam', '--build-dir=I:\\1_46_1-installer\\build', '--stagedir=I:\\1_46_1-installer\\stage', '--debug-configuration', '-j2', 'debug', 'release', 'threading=multi/link=shared,static/runtime-link=shared', 'threading=multi,single/link=static/runtime-link=static', 'stage', 'toolset=msvc-10.0express,msvc-9.0express,msvc-8.0express,msvc-7.1']'
>>>
>>> error: Duplicate name of actual target:<pI:\1_46_1-installer\stage\lib>mpi.pyd
>>>
>>
>> The name of this library is not mangled,
>> so you can't put two versions of it in
>> the same directory.
>
> Thanks, Steven, but I have basically no idea what that means. I
> didn't do anything special here other than issue the build command
> above from the Boost root directory. I didn't try to put two versions
> in the same directory, AFAIK.
>

It looks like this is similar to
http://lists.boost.org/Archives/boost/2009/11/158505.php
It doesn't look like anything was done about this,
and I don't think it would really solve your
problem anyway. Here's the thing: You've asked
to build with multiple toolsets and multiple
configurations. Because of the way the mpi
python extension is defined, only a single
configuration can be installed. However,
I don't think any single configuration is
correct in this case. The best idea I have
right now is

1) go to libs/mpi/build/Jamfile.v2 and add
    explicit mpi ;
    after the python-extension is declared.
2) Build everything else.
3) Figure out which variants of mpi.pyd you actually want to build.
4) Run bjam libs/mpi/build//mpi <other options>
    (You can leave out --stage-dir, it doesn't have any effect)
5) Find the binaries in build\libs\mpi\build\...\mpi.pyd and
    figure out where to put them

In Christ,
Steven Watanabe


Boost-Build list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk