Hi Mike,

Try looking under tools/build/v2/tools/mpi.jam

Thanks,


Hubert Tong

Hubert S K Tong
IBM Canada Ltd, C2/YGH/8200/MKM
8200 Warden Ave, Markham ON L6G 1C7
Canada
E-mail: hstong@ca.ibm.com

Inactive hide details for Mike Van Duzee ---26-07-2012 10:18:37 AM---Jurko, thanks for the quick reply. After adding the -d+2 oMike Van Duzee ---26-07-2012 10:18:37 AM---Jurko, thanks for the quick reply. After adding the -d+2 option I can see the following link line:

From: Mike Van Duzee <mike.vanduzee@caris.com>
To: "Boost.Build developer's and user's list" <boost-build@lists.boost.org>,
Date: 26-07-2012 10:18 AM
Subject: Re: [Boost-build] Building Boost 1.44 with mpi enabled
Sent by: boost-build-bounces@lists.boost.org





Jurko, thanks for the quick reply.

After adding the -d+2 option I can see the following link line:

link /NOLOGO /INCREMENTAL:NO /DLL /DEBUG /MACHINE:X64 /subsystem:console
/out:"bin.v2\libs\mpi\build\msvc-9.0\debug\address-model-64\threading-multi\boost_mpi-vc90-mt-gd-1_44.dll"
/IMPLIB:"bin.v2\libs\mpi\build\msvc-9.0\debug\address-model-64\threading-multi\boost_mpi-vc90-mt-gd-1_44.lib"
/LIBPATH:"d:\thirdparty\msvc2008\x64\OPENMPI\1.6\installed\lib"
@"bin.v2\libs\mpi\build\msvc-9.0\debug\address-model-64\threading-multi\boost_mpi-vc90-mt-gd-1_44.dll.rsp"

The unresolved symbols are located in the libmpi.lib library, but it is
nowhere to be found in the link line.

Looking at the mpi/build/Jamfile.v2 I don't see any modules listed. How
do I list a module to be linked against?

Thanks,
Mike

On 26/07/2012 10:30 AM, Jurko Gospodnetiæ wrote:
> Hi.
>
>> When I build it looks like every OpenMPI symbol is unresolved:
>>
>> msvc.link.dll
>> bin.v2\libs\mpi\build\msvc-9.0\debug\address-model-64\threading-multi\boost_mpi-vc90-mt-gd-1_44.dll
>>
>>
>> Creating library
>> bin.v2\libs\mpi\build\msvc-9.0\debug\address-model-64\threading-multi\boost_mpi-vc90-mt-gd-1_44.lib
>>
>> and object
>> bin.v2\libs\mpi\build\msvc-9.0\debug\address-model-64\threading-multi\boost_mpi-vc90-mt-gd-1_44.exp
>>
>>
>> text_skeleton_oarchive.obj : error LNK2001: unresolved external symbol
>> MPI_Error_class
>> timer.obj : error LNK2001: unresolved external symbol MPI_Error_class
>> ...
>>
>> I'm sure I'm just missing something simple, but I'm kinda new to this
>> and can't figure out what. Any help would be appreciated.
>
> First, since this problem seems to be Boost library build and not
> not really Boost Build build system related - you might get a better
> answer by asking on the Boost library user group/mailing-list.
>
> Never used MPI myself or tried compiling Boost with it so I can not
> help directly from experience but here is what I would do it this
> happened to me:
>
> * Run the build with the -d+2 option.
> * See the exact command line used when attempting to link one of the
> problematic libraries.
> * See which module actually implements one of the symbols reported
> as missing.
> * See whether this module has been listed in the command-line. If
> yes - then some define is missing and relative part of the code has
> been #ifdef-ed out or something similar; and if not - check whether
> the module is listed in the problematic library's build script.
>
> Steps from here diverge based on what was discovered up to now but
> basically - try to detect whether the problem is due to a missing
> setting in the build scripts or whether the Build system is doing
> something wrong. Most likely the problem is in the build scripts and
> in the process of researching this you'll find out some configuration
> setting in your environment is wrong or missing...
>
> Hope this helps.
>
> Best regards,
> Jurko Gospodnetiæ
>
> _______________________________________________
> Unsubscribe & other changes:
>
http://lists.boost.org/mailman/listinfo.cgi/boost-build

_______________________________________________
Unsubscribe & other changes:
http://lists.boost.org/mailman/listinfo.cgi/boost-build