2010-05-23 11 views
8

J'essaye d'exécuter un programme avec Boost MPI, mais le fait est que je n'ai pas le .lib. J'essaie d'en créer un en suivant les instructions à http://www.boost.org/doc/libs/1_43_0/doc/html/mpi/getting_started.html#mpi.configen essayant de construire Boost MPI, mais les fichiers lib ne sont pas créés. Que se passe-t-il?

L'instruction indique "Pour de nombreux utilisateurs utilisant LAM/MPI, MPICH, ou OpenMPI, la configuration est presque automatique", je me suis fait OpenMPI dans C: \, mais je n'a rien fait de plus avec ça. Avons-nous besoin de faire quelque chose avec ça? J'ai aussi obtenu MPICH2 dans Program Files, et je n'ai rien fait de plus avec ça. À ce stade de l'instruction est où je suis très incertain de ce que nous devons faire exactement. A côté de cela, une autre instruction de l'instruction: "Si vous n'avez pas encore de fichier user-config.jam dans votre répertoire personnel, copiez tools/build/v2/user-config.jam là-bas." Eh bien, je fais simplement ce qu'il dit. Je me suis "user-config.jam" dans C: \ boost_1_43_0> avec "using mpi;" dans le fichier.

Ensuite, ce que je l'ai fait: bjam --with-mpi

C:\boost_1_43_0>bjam --with-mpi 
WARNING: No python installation configured and autoconfiguration 
     failed. See http://www.boost.org/libs/python/doc/building.html 
     for configuration instructions or pass --without-python to 
     suppress this message and silently skip all Boost.Python targets 

Building the Boost C++ Libraries. 


warning: skipping optional Message Passing Interface (MPI) library. 
note: to enable MPI support, add "using mpi ;" to user-config.jam. 
note: to suppress this message, pass "--without-mpi" to bjam. 
note: otherwise, you can safely ignore this message. 
warning: Unable to construct ./stage-unversioned 
warning: Unable to construct ./stage-unversioned 

Component configuration: 

    - date_time    : not building 
    - filesystem    : not building 
    - graph     : not building 
    - graph_parallel   : not building 
    - iostreams    : not building 
    - math      : not building 
    - mpi      : building 
    - program_options   : not building 
    - python     : not building 
    - random     : not building 
    - regex     : not building 
    - serialization   : not building 
    - signals     : not building 
    - system     : not building 
    - test      : not building 
    - thread     : not building 
    - wave      : not building 

...found 1 target... 


The Boost C++ Libraries were successfully built! 

The following directory should be added to compiler include paths: 

    C:\boost_1_43_0 

The following directory should be added to linker library paths: 

    C:\boost_1_43_0\stage\lib 


C:\boost_1_43_0> 

Je vois qu'il ya beaucoup libs dans C: \ boost_1_43_0 \ stade \ lib, mais je ne vois aucune trace de libboost_mpi-vc100-mt-1_43.lib ou libboost_mpi-vc100-mt-gd-1_43.lib du tout. Ce sont les bibliothèques requises pour la liaison dans les applications mpi.

Qu'est-ce qui pourrait mal tourner lorsque les bibliothèques ne sont pas construites?

Répondre

14

Je suppose que c'est juste de ne pas lire votre user-config.jam ... Lorsque la compilation se réfère à, et cherche, l'utilisateur-config.jam, il le fait dans l'emplacement% HOME%. Pas dans le répertoire racine des sources Boost, ni dans le répertoire actuel. Mais vous pouvez le faire utiliser un fichier utilisateur-config.jam spécifique avec une option: bjam --user-config=user-config.jam .... Ce qui va le chercher seulement dans le répertoire actuel. Ou vous pouvez également spécifier un chemin d'accès complet au fichier. Vous devriez lire les commentaires dans le fichier outil mpi.jam (mpi.jam) car il explique dans quelles conditions il va configurer automatiquement les outils mpi. Plus précisément, la note d'avoir mpic++ dans votre chemin.

0

J'ai construit avec boost 1,55 mpi avec les commandes suivantes: lien ./bjam = partagé prefix =/logiciel/boost_1.55 installer

outils vim/build/v2/user-config.jam

- >> à la fin de user-config.jam "en utilisant mpi;" (Sans les guillemets)

./b2 link = Partagé prefix =/logiciel/boost_1.55 installer

Si je fournis je suis arrivé --with-mpi le même problème, donc je l'ai construit ce que façon.