Как скомпилировать Boost с MPICH2 на MinGW

Я пытаюсь скомпилировать Boost.MPI с последней версией MPICH2, к сожалению, в этой версии есть ошибка в mpicxx.h. Поэтому я использовал эти строки команд:

  • b2 toolset = gcc —j4 —layout = системный выпуск —prefix = C: \ librairies \ boost-1.53.0 —user-config = user-config.jam cxxflags = — DMPICH_SKIP_MPICXX установить

  • b2 toolset = gcc —j4 —layout = выпуск системы —prefix = C: \ librairies \ boost-1.53.0 —user-config = user-config.jam define = MPICH_SKIP_MPICXX установить

Мой user-config.jam выглядит так:

import toolset : using ;
using python : 2.7 : "C:/Python273" : "C:/Python273/include" :
"C:/Python273/libs" ;

using mpi : :
<find-static-library>mpi
<library-path>"C:/librairies/MPICH2-3.0.2/lib"<include>"C:/librairies/MPICH2-3.0.2/include":
"\"C:\\librairies\\MPICH2-3.0.2\\bin\\mpiexec\"";

И через несколько минут компиляция завершится с этой ошибкой:

gcc.link.dll bin.v2 \ libs \ mpi \ build \ gcc-mingw-4.7.2 \ release \ threading-multi \ libmpi.dll.a
bin.v2 \ libs \ mpi \ build \ gcc-mingw-4.7.2 \ release \ threading-multi \ python \ skeleton_and_content.o: skeleton_and_content.cpp :(. text + 0x718): неопределенная ссылка на `чертенок__ZN5boost3mpi6python6detail24skeleton_proxy_base_typeE»
collect2.exe: ошибка: ld вернул 1 состояние выхода

«g ++» -L «C: \ Python273 \ libs» -L «C: \ librairies \ MPICH2-3.0.2 \ lib» -Wl, -R -Wl, «C: \ Python273 \ libs» «-Wl, — -out-implib, bin.v2 \ libs \ mpi \ build \ gcc-mingw-4.7.2 \ release \ threading-multi \ libmpi.dll.a «-o» bin.v2 \ libs \ mpi \ build \ gcc- mingw-4.7.2 \ release \ threading-multi \ mpi.pyd «-shared -Wl, — начальная группа» bin.v2 \ libs \ mpi \ build \ gcc-mingw-4.7.2 \ release \ threading-multi \ python \ colles.o «» bin.v2 \ libs \ mpi \ build \ gcc-mingw-4.7.2 \ release \ threading-multi \ python \ py_communicator.o «» bin.v2 \ libs \ mpi \ build \ gcc -mingw-4.7.2 \ release \ threading-multi \ python \ datatypes.o «» bin.v2 \ libs \ mpi \ build \ gcc-mingw-4.7.2 \ release \ threading-multi \ python \ documentation.o » «bin.v2 \ libs \ mpi \ build \ gcc-mingw-4.7.2 \ release \ threading-multi \ python \ py_environment.o» «bin.v2 \ libs \ mpi \ build \ gcc-mingw-4.7.2 \ release \ threading-multi \ python \ py_nonblocking.o «» bin.v2 \ libs \ mpi \ build \ gcc-mingw-4.7.2 \ release \ threading-multi \ python \ py_exception.o «» bin.v2 \ libs \ mpi \ build \ gcc-mingw-4.7.2 \ release \ threading-multi \ python \ module.o «» bin.v2!
libs \ mpi \ build \ gcc-mingw-4.7.2 \ release \ threading-multi \ python \ py_request.o «» bin.v2 \ libs \ mpi \ build \ gcc-mingw-4.7.2 \ release \ threading-multi \ python \ skeleton_and_content.o «» bin.v2 \ libs \ mpi \ build \ gcc-mingw-4.7.2 \ release \ threading-multi \ python \ status.o «» bin.v2 \ libs \ mpi \ build \ gcc -mingw-4.7.2 \ release \ threading-multi \ python \ py_timer.o «» bin.v2 \ libs \ mpi \ build \ gcc-mingw-4.7.2 \ release \ threading-multi \ libboost_mpi_python.dll.a » «bin.v2 \ libs \ python \ build \ gcc-mingw-4.7.2 \ release \ threading-multi \ libboost_python.dll.a» «bin.v2 \ libs \ mpi \ build \ gcc-mingw-4.7.2 \ release \ threading-multi \ libboost_mpi.dll.a «» bin.v2 \ libs \ serialization \ build \ gcc-mingw-4.7.2 \ release \ threading-multi \ libboost_serialization.dll.a «-Wl, -Bstatic -lmpi -Wl, -Bdynamic -lpython27 -Wl, — конечная группа

…ошибка gcc.link.dll bin.v2 \ libs \ mpi \ build \ gcc-mingw-4.7.2 \ release \ threading-multi \ libmpi.dll.a bin.v2 \ libs \ mpi \ build \ gcc-mingw-4.7 0,2 \ выпуск \ потоковая мультимиллионера \ mpi.pyd …
… удаление bin.v2 \ libs \ mpi \ build \ gcc-mingw-4.7.2 \ release \ threading-multi \ libmpi.dll.a
… пропустил mpi.pyd из-за отсутствия mpi.pyd …
… пропущен libmpi.dll.a из-за отсутствия libmpi.dll.a …

Кто-то знает, почему у меня есть эта ошибка? Или — возможно ли скомпилировать Boost.MPI с MinGW? Если да, каковы шаги?

Заранее спасибо.

0

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]