wuguangjun
Hello boost-users, I install boost_1-38 in centOS5.3. with following command; ./configure -with-libraries=all Then I add "using mpi ;" into user-configure.jam, when I make the MakeFile ,an error occur,
./tools/jam/src/bin.linuxx86/bjam --user-config=user-config.jam MPI auto-detection failed: unknown wrapper compiler mpic++ Please report this error to the Boost mailing list: http://www.boost.org You will need to manually configure MPI support. warning: Graph library does not contain optional GraphML reader. note: to enable GraphML support, set EXPAT_INCLUDE and EXPAT_LIBPATH to the note: directories containing the Expat headers and libraries, respectively. 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. Building Boost.Regex with the optional Unicode/ICU support disabled. Note: Please refer to the Boost.Regex documentation for more information Note: this is a strictly optional feature. Is there something wrong?
First, you need to install the package "openmpi-devel". Do this as root: # yum install openmpi-devel This should bring in a number of dependencies, including a package named "mpi-selector". Once the installation has finished, done, use the MPI selector tool to choose the MPI toolset you've just installed. You can get a list of available MPI implementations using the command "mpi-selector". As an example, here's how it looks on my 64-bit CentOS 5.3 system: # mpi-selector --list openmpi-1.2.7-gcc-i386 openmpi-1.2.7-gcc-x86_64 Then, while still logged in as root, set the system-wide default by # mpi-selector --system openmpi-1.2.7-gcc-x86_64 Log out, then open a new terminal window (as your normal user) and try $ which mpic++ /usr/lib64/openmpi/1.2.7-gcc/bin/mpic++ Once you have installed openmpi properly and used mpi-selector, you should be able to build boost. To fix the second warning, related to the Expat libraries, edit the Makefile and change the BJAM_CONFIG line to this: BJAM_CONFIG=-sICU_PATH=/usr -sEXPAT_INCLUDE=/usr/include \ -sEXPAT_LIBPATH=/usr/lib64 (That should really be only one line of text without the backslash) If you're using a 32-bit CentOS, the EXPAT_LIBPATH should be /usr/lib. You'll need the package "expat-devel" installed for this to work. Good luck!