[mpi] cvs, 2 errors, build missing -fPIC and install duplicate target
--build-configuration notice: found boost-build.jam at /home/cfairles/repos/boost/boost-build.jam notice: loading Boost.Build from /home/cfairles/repos/boost/tools/build/v2 searching "/etc" "/home/cfairles" "/usr/share/boost-build" "/home/cfairles/repos/boost/tools/build/v2" "/home/cfairles/repos/boost/tools/build/v2/kernel" "/home/cfairles/repos/boost/tools/build/v2/util" "/home/cfairles/repos/boost/tools/build/v2/build" "/home/cfairles/repos/boost/tools/build/v2/tools" "/home/cfairles/repos/boost/tools/build/v2/new" "/home/cfairles/repos/boost/tools/build/v2/." for "site-config.jam" notice: loading site-config.jam from /home/cfairles/repos/boost/tools/build/v2/site-config.jam Loading explicitly specifier user configuration file: user-config.jam notice: using gcc libraries :: <toolset>gcc-4.1.1 :: /usr/lib64/ccache/bin /usr/lib64/ccache/lib /usr/lib64/ccache/lib32 /usr/lib64/ccache/lib64 notice: using gcc archiver :: <toolset>gcc-4.1.1 :: ar warning: toolset gcc initialization: can't find tool windres warning: initialized from notice: using rc compiler :: <toolset>gcc-4.1.1 :: as notice: looking for python 2.4 notice: searching for python binaries in /usr/bin notice: trying Python interpreter command /usr/bin/python2.4 notice: /usr/bin/python2.4 invokes actual Python (major,minor) version 2.4 notice: qualifying Python interpreter found notice: Python interpreter command is /usr/bin/python2.4 notice: Python include path is /usr/include/python2.4 notice: Python library path is /usr/lib/python2.4/config ===============MPI Auto-configuration=============== Found recent LAM-MPI or Open MPI wrapper compiler: mpic++ MPI compilation flags: -I/usr/include/openmpi -I/usr/include/openmpi/openmpi -m64 -pthread MPI link flags: -m64 -pthread -L/usr/lib64/openmpi -lmpi_cxx -lmpi -lorte -lopal -ldl -Wl,--export-dynamic -lnsl -lutil -lm -ldl MPI build features: <include>/usr/include/openmpi <include>/usr/include/openmpi/openmpi <threading>multi <cxxflags>-m64 <threading>multi <library-path>/usr/lib64/openmpi <find-shared-library>mpi_cxx <find-shared-library>mpi <find-shared-library>orte <find-shared-library>opal <find-shared-library>dl <find-shared-library>nsl <find-shared-library>util <find-shared-library>m <find-shared-library>dl <linkflags>-m64 <linkflags>-Wl,--export-dynamic MPI launcher: mpirun -np ==================================================== notice: iostreams: using prebuilt zlib notice: iostreams: using prebuilt bzip2 user-config.jam: using gcc; using python : 2.4 : /usr ; using mpi ; Error #1: Building with: ./tools/jam/src/bin.linux/bjam -d+2 -sICU_PATH=/usr variant=release threading=multi --layout=system --user-config=user-config.jam --with-date_time --with-filesystem --with-function_types --with-iostreams --with-mpi --with-program_options --with-python --with-serialization --with-signals --with-system --with-thread --with-test I obtained the following linker error. /usr/bin/ld: bin.v2/libs/mpi/build/gcc-4.1.1/release/link-static/threading-multi/collectives.o: relocation R_X86_64_32 against `__dso_handle' can not be used when making a shared object; recompile with -fPIC Solved by adding using gcc : : : <cxxflags>-fPIC ; to user-config.jam Error #2: ./tools/jam/src/bin.linux/bjam -d+2 -sICU_PATH=/usr variant=release threading=multi --layout=system --user-config=user-config.jam --prefix=/home/cfairles/usr --exec-prefix=/home/cfairles/usr --libdir=/home/cfairles/usr/lib64 --includedir=/home/cfairles/usr/include --with-date_time --with-filesystem --with-function_types --with-iostreams --with-mpi --with-program_options --with-python --with-serialization --with-signals --with-system --with-thread --with-test install /home/cfairles/repos/boost/tools/build/v2/build/virtual-target.jam:996: in virtual-target.register-actual-name from module virtual-target error: Duplicate name of actual target:
mpi.so error: previous virtual target { common%common.copy-mpi.so.PYTHON_EXTENSION { gcc%gcc.link.dll-mpi.so.PYTHON_EXTENSION { gcc%gcc.compile.c++-collectives.o.OBJ { python/collectives.cpp.CPP } } { gcc%gcc.compile.c++-py_communicator.o.OBJ { python/py_communicator.cpp.CPP } } { gcc%gcc.compile.c++-datatypes.o.OBJ { python/datatypes.cpp.CPP } } { gcc%gcc.compile.c++-documentation.o.OBJ { python/documentation.cpp.CPP } } { gcc%gcc.compile.c++-py_environment.o.OBJ { python/py_environment.cpp.CPP } } { gcc%gcc.compile.c++-py_exception.o.OBJ { python/py_exception.cpp.CPP } } { gcc%gcc.compile.c++-module.o.OBJ { python/module.cpp.CPP } } { gcc%gcc.compile.c++-py_request.o.OBJ { python/py_request.cpp.CPP } } { gcc%gcc.compile.c++-skeleton_and_content.o.OBJ { python/skeleton_and_content.cpp.CPP } } { gcc%gcc.compile.c++-status.o.OBJ { python/status.cpp.CPP } } { gcc%gcc.compile.c++-py_timer.o.OBJ { python/py_timer.cpp.CPP } } { gcc%gcc.link.dll-libboost_mpi_python-mt.so.SHARED_LIB { gcc%gcc.compile.c++-serialize.o.OBJ { python/serialize.cpp.CPP } } { gcc%gcc.link.dll-libboost_python-mt.so.SHARED_LIB { gcc%gcc.compile.c++-numeric.o.OBJ { numeric.cpp.CPP } } { gcc%gcc.compile.c++-list.o.OBJ { list.cpp.CPP } } { gcc%gcc.compile.c++-long.o.OBJ { long.cpp.CPP } } { gcc%gcc.compile.c++-dict.o.OBJ { dict.cpp.CPP } } { gcc%gcc.compile.c++-tuple.o.OBJ { tuple.cpp.CPP } } { gcc%gcc.compile.c++-str.o.OBJ { str.cpp.CPP } } { gcc%gcc.compile.c++-slice.o.OBJ { slice.cpp.CPP } } { gcc%gcc.compile.c++-aix_init_module.o.OBJ { aix_init_module.cpp.CPP } } { gcc%gcc.compile.c++-from_python.o.OBJ { converter/from_python.cpp.CPP } } { gcc%gcc.compile.c++-registry.o.OBJ { converter/registry.cpp.CPP } } { gcc%gcc.compile.c++-type_id.o.OBJ { converter/type_id.cpp.CPP } } { gcc%gcc.compile.c++-enum.o.OBJ { object/enum.cpp.CPP } } { gcc%gcc.compile.c++-class.o.OBJ { object/class.cpp.CPP } } { gcc%gcc.compile.c++-function.o.OBJ { object/function.cpp.CPP } } { gcc%gcc.compile.c++-inheritance.o.OBJ { object/inheritance.cpp.CPP } } { gcc%gcc.compile.c++-life_support.o.OBJ { object/life_support.cpp.CPP } } { gcc%gcc.compile.c++-pickle_support.o.OBJ { object/pickle_support.cpp.CPP } } { gcc%gcc.compile.c++-errors.o.OBJ { errors.cpp.CPP } } { gcc%gcc.compile.c++-module.o.OBJ { module.cpp.CPP } } { gcc%gcc.compile.c++-builtin_converters.o.OBJ { converter/builtin_converters.cpp.CPP } } { gcc%gcc.compile.c++-arg_to_python_base.o.OBJ { converter/arg_to_python_base.cpp.CPP } } { gcc%gcc.compile.c++-iterator.o.OBJ { object/iterator.cpp.CPP } } { gcc%gcc.compile.c++-stl_iterator.o.OBJ { object/stl_iterator.cpp.CPP } } { gcc%gcc.compile.c++-object_protocol.o.OBJ { object_protocol.cpp.CPP } } { gcc%gcc.compile.c++-object_operators.o.OBJ { object_operators.cpp.CPP } } { gcc%gcc.compile.c++-wrapper.o.OBJ { wrapper.cpp.CPP } } { gcc%gcc.compile.c++-import.o.OBJ { import.cpp.CPP } } { gcc%gcc.compile.c++-exec.o.OBJ { exec.cpp.CPP } } } { gcc%gcc.link.dll-libboost_mpi-mt.so.SHARED_LIB { gcc%gcc.compile.c++-broadcast.o.OBJ { broadcast.cpp.CPP } } { gcc%gcc.compile.c++-communicator.o.OBJ { communicator.cpp.CPP } } { gcc%gcc.compile.c++-computation_tree.o.OBJ { computation_tree.cpp.CPP } } { gcc%gcc.compile.c++-content_oarchive.o.OBJ { content_oarchive.cpp.CPP } } { gcc%gcc.compile.c++-environment.o.OBJ { environment.cpp.CPP } } { gcc%gcc.compile.c++-exception.o.OBJ { exception.cpp.CPP } } { gcc%gcc.compile.c++-graph_topology.o.OBJ { graph_topology.cpp.CPP } } { gcc%gcc.compile.c++-group.o.OBJ { group.cpp.CPP } } { gcc%gcc.compile.c++-mpi_datatype_cache.o.OBJ { mpi_datatype_cache.cpp.CPP } } { gcc%gcc.compile.c++-mpi_datatype_oarchive.o.OBJ { mpi_datatype_oarchive.cpp.CPP } } { gcc%gcc.compile.c++-packed_iarchive.o.OBJ { packed_iarchive.cpp.CPP } } { gcc%gcc.compile.c++-packed_oarchive.o.OBJ { packed_oarchive.cpp.CPP } } { gcc%gcc.compile.c++-packed_skeleton_iarchive.o.OBJ { packed_skeleton_iarchive.cpp.CPP } } { gcc%gcc.compile.c++-packed_skeleton_oarchive.o.OBJ { packed_skeleton_oarchive.cpp.CPP } } { gcc%gcc.compile.c++-point_to_point.o.OBJ { point_to_point.cpp.CPP } } { gcc%gcc.compile.c++-request.o.OBJ { request.cpp.CPP } } { gcc%gcc.compile.c++-text_skeleton_oarchive.o.OBJ { text_skeleton_oarchive.cpp.CPP } } { gcc%gcc.compile.c++-timer.o.OBJ { timer.cpp.CPP } } { gcc%gcc.link.dll-libboost_serialization-mt.so.SHARED_LIB { gcc%gcc.compile.c++-basic_archive.o.OBJ { basic_archive.cpp.CPP } } { gcc%gcc.compile.c++-basic_iarchive.o.OBJ { basic_iarchive.cpp.CPP } } { gcc%gcc.compile.c++-basic_iserializer.o.OBJ { basic_iserializer.cpp.CPP } } { gcc%gcc.compile.c++-basic_oarchive.o.OBJ { basic_oarchive.cpp.CPP } } { gcc%gcc.compile.c++-basic_oserializer.o.OBJ { basic_oserializer.cpp.CPP } } { gcc%gcc.compile.c++-basic_pointer_iserializer.o.OBJ { basic_pointer_iserializer.cpp.CPP } } { gcc%gcc.compile.c++-basic_pointer_oserializer.o.OBJ { basic_pointer_oserializer.cpp.CPP } } { gcc%gcc.compile.c++-basic_serializer_map.o.OBJ { basic_serializer_map.cpp.CPP } } { gcc%gcc.compile.c++-basic_text_iprimitive.o.OBJ { basic_text_iprimitive.cpp.CPP } } { gcc%gcc.compile.c++-basic_text_oprimitive.o.OBJ { basic_text_oprimitive.cpp.CPP } } { gcc%gcc.compile.c++-basic_xml_archive.o.OBJ { basic_xml_archive.cpp.CPP } } { gcc%gcc.compile.c++-binary_iarchive.o.OBJ { binary_iarchive.cpp.CPP } } { gcc%gcc.compile.c++-binary_oarchive.o.OBJ { binary_oarchive.cpp.CPP } } { gcc%gcc.compile.c++-codecvt_null.o.OBJ { codecvt_null.cpp.CPP } } { gcc%gcc.compile.c++-extended_type_info.o.OBJ { extended_type_info.cpp.CPP } } { gcc%gcc.compile.c++-extended_type_info_no_rtti.o.OBJ { extended_type_info_no_rtti.cpp.CPP } } { gcc%gcc.compile.c++-extended_type_info_typeid.o.OBJ { extended_type_info_typeid.cpp.CPP } } { gcc%gcc.compile.c++-polymorphic_iarchive.o.OBJ { polymorphic_iarchive.cpp.CPP } } { gcc%gcc.compile.c++-polymorphic_oarchive.o.OBJ { polymorphic_oarchive.cpp.CPP } } { gcc%gcc.compile.c++-stl_port.o.OBJ { stl_port.cpp.CPP } } { gcc%gcc.compile.c++-text_iarchive.o.OBJ { text_iarchive.cpp.CPP } } { gcc%gcc.compile.c++-text_oarchive.o.OBJ { text_oarchive.cpp.CPP } } { gcc%gcc.compile.c++-void_cast.o.OBJ { void_cast.cpp.CPP } } { gcc%gcc.compile.c++-xml_grammar.o.OBJ { xml_grammar.cpp.CPP } } { gcc%gcc.compile.c++-xml_iarchive.o.OBJ { xml_iarchive.cpp.CPP } } { gcc%gcc.compile.c++-xml_oarchive.o.OBJ { xml_oarchive.cpp.CPP } } } } { gcc%gcc.link.dll-libboost_serialization-mt.so.SHARED_LIB { gcc%gcc.compile.c++-basic_archive.o.OBJ { basic_archive.cpp.CPP } } { gcc%gcc.compile.c++-basic_iarchive.o.OBJ { basic_iarchive.cpp.CPP } } { gcc%gcc.compile.c++-basic_iserializer.o.OBJ { basic_iserializer.cpp.CPP } } { gcc%gcc.compile.c++-basic_oarchive.o.OBJ { basic_oarchive.cpp.CPP } } { gcc%gcc.compile.c++-basic_oserializer.o.OBJ { basic_oserializer.cpp.CPP } } { gcc%gcc.compile.c++-basic_pointer_iserializer.o.OBJ { basic_pointer_iserializer.cpp.CPP } } { gcc%gcc.compile.c++-basic_pointer_oserializer.o.OBJ { basic_pointer_oserializer.cpp.CPP } } { gcc%gcc.compile.c++-basic_serializer_map.o.OBJ { basic_serializer_map.cpp.CPP } } { gcc%gcc.compile.c++-basic_text_iprimitive.o.OBJ { basic_text_iprimitive.cpp.CPP } } { gcc%gcc.compile.c++-basic_text_oprimitive.o.OBJ { basic_text_oprimitive.cpp.CPP } } { gcc%gcc.compile.c++-basic_xml_archive.o.OBJ { basic_xml_archive.cpp.CPP } } { gcc%gcc.compile.c++-binary_iarchive.o.OBJ { binary_iarchive.cpp.CPP } } { gcc%gcc.compile.c++-binary_oarchive.o.OBJ { binary_oarchive.cpp.CPP } } { gcc%gcc.compile.c++-codecvt_null.o.OBJ { codecvt_null.cpp.CPP } } { gcc%gcc.compile.c++-extended_type_info.o.OBJ { extended_type_info.cpp.CPP } } { gcc%gcc.compile.c++-extended_type_info_no_rtti.o.OBJ { extended_type_info_no_rtti.cpp.CPP } } { gcc%gcc.compile.c++-extended_type_info_typeid.o.OBJ { extended_type_info_typeid.cpp.CPP } } { gcc%gcc.compile.c++-polymorphic_iarchive.o.OBJ { polymorphic_iarchive.cpp.CPP } } { gcc%gcc.compile.c++-polymorphic_oarchive.o.OBJ { polymorphic_oarchive.cpp.CPP } } { gcc%gcc.compile.c++-stl_port.o.OBJ { stl_port.cpp.CPP } } { gcc%gcc.compile.c++-text_iarchive.o.OBJ { text_iarchive.cpp.CPP } } { gcc%gcc.compile.c++-text_oarchive.o.OBJ { text_oarchive.cpp.CPP } } { gcc%gcc.compile.c++-void_cast.o.OBJ { void_cast.cpp.CPP } } { gcc%gcc.compile.c++-xml_grammar.o.OBJ { xml_grammar.cpp.CPP } } { gcc%gcc.compile.c++-xml_iarchive.o.OBJ { xml_iarchive.cpp.CPP } } { gcc%gcc.compile.c++-xml_oarchive.o.OBJ { xml_oarchive.cpp.CPP } } } } { gcc%gcc.link.dll-libboost_mpi-mt.so.SHARED_LIB { gcc%gcc.compile.c++-broadcast.o.OBJ { broadcast.cpp.CPP } } { gcc%gcc.compile.c++-communicator.o.OBJ { communicator.cpp.CPP } } { gcc%gcc.compile.c++-computation_tree.o.OBJ { computation_tree.cpp.CPP } } { gcc%gcc.compile.c++-content_oarchive.o.OBJ { content_oarchive.cpp.CPP } } { gcc%gcc.compile.c++-environment.o.OBJ { environment.cpp.CPP } } { gcc%gcc.compile.c++-exception.o.OBJ { exception.cpp.CPP } } { gcc%gcc.compile.c++-graph_topology.o.OBJ { graph_topology.cpp.CPP } } { gcc%gcc.compile.c++-group.o.OBJ { group.cpp.CPP } } { gcc%gcc.compile.c++-mpi_datatype_cache.o.OBJ { mpi_datatype_cache.cpp.CPP } } { gcc%gcc.compile.c++-mpi_datatype_oarchive.o.OBJ { mpi_datatype_oarchive.cpp.CPP } } { gcc%gcc.compile.c++-packed_iarchive.o.OBJ { packed_iarchive.cpp.CPP } } { gcc%gcc.compile.c++-packed_oarchive.o.OBJ { packed_oarchive.cpp.CPP } } { gcc%gcc.compile.c++-packed_skeleton_iarchive.o.OBJ { packed_skeleton_iarchive.cpp.CPP } } { gcc%gcc.compile.c++-packed_skeleton_oarchive.o.OBJ { packed_skeleton_oarchive.cpp.CPP } } { gcc%gcc.compile.c++-point_to_point.o.OBJ { point_to_point.cpp.CPP } } { gcc%gcc.compile.c++-request.o.OBJ { request.cpp.CPP } } { gcc%gcc.compile.c++-text_skeleton_oarchive.o.OBJ { text_skeleton_oarchive.cpp.CPP } } { gcc%gcc.compile.c++-timer.o.OBJ { timer.cpp.CPP } } { gcc%gcc.link.dll-libboost_serialization-mt.so.SHARED_LIB { gcc%gcc.compile.c++-basic_archive.o.OBJ { basic_archive.cpp.CPP } } { gcc%gcc.compile.c++-basic_iarchive.o.OBJ { basic_iarchive.cpp.CPP } } { gcc%gcc.compile.c++-basic_iserializer.o.OBJ { basic_iserializer.cpp.CPP } } { gcc%gcc.compile.c++-basic_oarchive.o.OBJ { basic_oarchive.cpp.CPP } } { gcc%gcc.compile.c++-basic_oserializer.o.OBJ { basic_oserializer.cpp.CPP } } { gcc%gcc.compile.c++-basic_pointer_iserializer.o.OBJ { basic_pointer_iserializer.cpp.CPP } } { gcc%gcc.compile.c++-basic_pointer_oserializer.o.OBJ { basic_pointer_oserializer.cpp.CPP } } { gcc%gcc.compile.c++-basic_serializer_map.o.OBJ { basic_serializer_map.cpp.CPP } } { gcc%gcc.compile.c++-basic_text_iprimitive.o.OBJ { basic_text_iprimitive.cpp.CPP } } { gcc%gcc.compile.c++-basic_text_oprimitive.o.OBJ { basic_text_oprimitive.cpp.CPP } } { gcc%gcc.compile.c++-basic_xml_archive.o.OBJ { basic_xml_archive.cpp.CPP } } { gcc%gcc.compile.c++-binary_iarchive.o.OBJ { binary_iarchive.cpp.CPP } } { gcc%gcc.compile.c++-binary_oarchive.o.OBJ { binary_oarchive.cpp.CPP } } { gcc%gcc.compile.c++-codecvt_null.o.OBJ { codecvt_null.cpp.CPP } } { gcc%gcc.compile.c++-extended_type_info.o.OBJ { extended_type_info.cpp.CPP } } { gcc%gcc.compile.c++-extended_type_info_no_rtti.o.OBJ { extended_type_info_no_rtti.cpp.CPP } } { gcc%gcc.compile.c++-extended_type_info_typeid.o.OBJ { extended_type_info_typeid.cpp.CPP } } { gcc%gcc.compile.c++-polymorphic_iarchive.o.OBJ { polymorphic_iarchive.cpp.CPP } } { gcc%gcc.compile.c++-polymorphic_oarchive.o.OBJ { polymorphic_oarchive.cpp.CPP } } { gcc%gcc.compile.c++-stl_port.o.OBJ { stl_port.cpp.CPP } } { gcc%gcc.compile.c++-text_iarchive.o.OBJ { text_iarchive.cpp.CPP } } { gcc%gcc.compile.c++-text_oarchive.o.OBJ { text_oarchive.cpp.CPP } } { gcc%gcc.compile.c++-void_cast.o.OBJ { void_cast.cpp.CPP } } { gcc%gcc.compile.c++-xml_grammar.o.OBJ { xml_grammar.cpp.CPP } } { gcc%gcc.compile.c++-xml_iarchive.o.OBJ { xml_iarchive.cpp.CPP } } { gcc%gcc.compile.c++-xml_oarchive.o.OBJ { xml_oarchive.cpp.CPP } } } } { gcc%gcc.link.dll-libboost_serialization-mt.so.SHARED_LIB { gcc%gcc.compile.c++-basic_archive.o.OBJ { basic_archive.cpp.CPP } } { gcc%gcc.compile.c++-basic_iarchive.o.OBJ { basic_iarchive.cpp.CPP } } { gcc%gcc.compile.c++-basic_iserializer.o.OBJ { basic_iserializer.cpp.CPP } } { gcc%gcc.compile.c++-basic_oarchive.o.OBJ { basic_oarchive.cpp.CPP } } { gcc%gcc.compile.c++-basic_oserializer.o.OBJ { basic_oserializer.cpp.CPP } } { gcc%gcc.compile.c++-basic_pointer_iserializer.o.OBJ { basic_pointer_iserializer.cpp.CPP } } { gcc%gcc.compile.c++-basic_pointer_oserializer.o.OBJ { basic_pointer_oserializer.cpp.CPP } } { gcc%gcc.compile.c++-basic_serializer_map.o.OBJ { basic_serializer_map.cpp.CPP } } { gcc%gcc.compile.c++-basic_text_iprimitive.o.OBJ { basic_text_iprimitive.cpp.CPP } } { gcc%gcc.compile.c++-basic_text_oprimitive.o.OBJ { basic_text_oprimitive.cpp.CPP } } { gcc%gcc.compile.c++-basic_xml_archive.o.OBJ { basic_xml_archive.cpp.CPP } } { gcc%gcc.compile.c++-binary_iarchive.o.OBJ { binary_iarchive.cpp.CPP } } { gcc%gcc.compile.c++-binary_oarchive.o.OBJ { binary_oarchive.cpp.CPP } } { gcc%gcc.compile.c++-codecvt_null.o.OBJ { codecvt_null.cpp.CPP } } { gcc%gcc.compile.c++-extended_type_info.o.OBJ { extended_type_info.cpp.CPP } } { gcc%gcc.compile.c++-extended_type_info_no_rtti.o.OBJ { extended_type_info_no_rtti.cpp.CPP } } { gcc%gcc.compile.c++-extended_type_info_typeid.o.OBJ { extended_type_info_typeid.cpp.CPP } } { gcc%gcc.compile.c++-polymorphic_iarchive.o.OBJ { polymorphic_iarchive.cpp.CPP } } { gcc%gcc.compile.c++-polymorphic_oarchive.o.OBJ { polymorphic_oarchive.cpp.CPP } } { gcc%gcc.compile.c++-stl_port.o.OBJ { stl_port.cpp.CPP } } { gcc%gcc.compile.c++-text_iarchive.o.OBJ { text_iarchive.cpp.CPP } } { gcc%gcc.compile.c++-text_oarchive.o.OBJ { text_oarchive.cpp.CPP } } { gcc%gcc.compile.c++-void_cast.o.OBJ { void_cast.cpp.CPP } } { gcc%gcc.compile.c++-xml_grammar.o.OBJ { xml_grammar.cpp.CPP } } { gcc%gcc.compile.c++-xml_iarchive.o.OBJ { xml_iarchive.cpp.CPP } } { gcc%gcc.compile.c++-xml_oarchive.o.OBJ { xml_oarchive.cpp.CPP } } } } } error: created from ./install-proper-lib error: another virtual target { common%common.copy-mpi.so.PYTHON_EXTENSION { gcc%gcc.link.dll-mpi.so.PYTHON_EXTENSION { gcc%gcc.compile.c++-collectives.o.OBJ { python/collectives.cpp.CPP } } { gcc%gcc.compile.c++-py_communicator.o.OBJ { python/py_communicator.cpp.CPP } } { gcc%gcc.compile.c++-datatypes.o.OBJ { python/datatypes.cpp.CPP } } { gcc%gcc.compile.c++-documentation.o.OBJ { python/documentation.cpp.CPP } } { gcc%gcc.compile.c++-py_environment.o.OBJ { python/py_environment.cpp.CPP } } { gcc%gcc.compile.c++-py_exception.o.OBJ { python/py_exception.cpp.CPP } } { gcc%gcc.compile.c++-module.o.OBJ { python/module.cpp.CPP } } { gcc%gcc.compile.c++-py_request.o.OBJ { python/py_request.cpp.CPP } } { gcc%gcc.compile.c++-skeleton_and_content.o.OBJ { python/skeleton_and_content.cpp.CPP } } { gcc%gcc.compile.c++-status.o.OBJ { python/status.cpp.CPP } } { gcc%gcc.compile.c++-py_timer.o.OBJ { python/py_timer.cpp.CPP } } { gcc%gcc.archive-libboost_mpi_python-mt.a.STATIC_LIB { gcc%gcc.compile.c++-serialize.o.OBJ { python/serialize.cpp.CPP } } } { gcc%gcc.archive-libboost_python-mt.a.STATIC_LIB { gcc%gcc.compile.c++-numeric.o.OBJ { numeric.cpp.CPP } } { gcc%gcc.compile.c++-list.o.OBJ { list.cpp.CPP } } { gcc%gcc.compile.c++-long.o.OBJ { long.cpp.CPP } } { gcc%gcc.compile.c++-dict.o.OBJ { dict.cpp.CPP } } { gcc%gcc.compile.c++-tuple.o.OBJ { tuple.cpp.CPP } } { gcc%gcc.compile.c++-str.o.OBJ { str.cpp.CPP } } { gcc%gcc.compile.c++-slice.o.OBJ { slice.cpp.CPP } } { gcc%gcc.compile.c++-aix_init_module.o.OBJ { aix_init_module.cpp.CPP } } { gcc%gcc.compile.c++-from_python.o.OBJ { converter/from_python.cpp.CPP } } { gcc%gcc.compile.c++-registry.o.OBJ { converter/registry.cpp.CPP } } { gcc%gcc.compile.c++-type_id.o.OBJ { converter/type_id.cpp.CPP } } { gcc%gcc.compile.c++-enum.o.OBJ { object/enum.cpp.CPP } } { gcc%gcc.compile.c++-class.o.OBJ { object/class.cpp.CPP } } { gcc%gcc.compile.c++-function.o.OBJ { object/function.cpp.CPP } } { gcc%gcc.compile.c++-inheritance.o.OBJ { object/inheritance.cpp.CPP } } { gcc%gcc.compile.c++-life_support.o.OBJ { object/life_support.cpp.CPP } } { gcc%gcc.compile.c++-pickle_support.o.OBJ { object/pickle_support.cpp.CPP } } { gcc%gcc.compile.c++-errors.o.OBJ { errors.cpp.CPP } } { gcc%gcc.compile.c++-module.o.OBJ { module.cpp.CPP } } { gcc%gcc.compile.c++-builtin_converters.o.OBJ { converter/builtin_converters.cpp.CPP } } { gcc%gcc.compile.c++-arg_to_python_base.o.OBJ { converter/arg_to_python_base.cpp.CPP } } { gcc%gcc.compile.c++-iterator.o.OBJ { object/iterator.cpp.CPP } } { gcc%gcc.compile.c++-stl_iterator.o.OBJ { object/stl_iterator.cpp.CPP } } { gcc%gcc.compile.c++-object_protocol.o.OBJ { object_protocol.cpp.CPP } } { gcc%gcc.compile.c++-object_operators.o.OBJ { object_operators.cpp.CPP } } { gcc%gcc.compile.c++-wrapper.o.OBJ { wrapper.cpp.CPP } } { gcc%gcc.compile.c++-import.o.OBJ { import.cpp.CPP } } { gcc%gcc.compile.c++-exec.o.OBJ { exec.cpp.CPP } } } { gcc%gcc.archive-libboost_mpi-mt.a.STATIC_LIB { gcc%gcc.compile.c++-broadcast.o.OBJ { broadcast.cpp.CPP } } { gcc%gcc.compile.c++-communicator.o.OBJ { communicator.cpp.CPP } } { gcc%gcc.compile.c++-computation_tree.o.OBJ { computation_tree.cpp.CPP } } { gcc%gcc.compile.c++-content_oarchive.o.OBJ { content_oarchive.cpp.CPP } } { gcc%gcc.compile.c++-environment.o.OBJ { environment.cpp.CPP } } { gcc%gcc.compile.c++-exception.o.OBJ { exception.cpp.CPP } } { gcc%gcc.compile.c++-graph_topology.o.OBJ { graph_topology.cpp.CPP } } { gcc%gcc.compile.c++-group.o.OBJ { group.cpp.CPP } } { gcc%gcc.compile.c++-mpi_datatype_cache.o.OBJ { mpi_datatype_cache.cpp.CPP } } { gcc%gcc.compile.c++-mpi_datatype_oarchive.o.OBJ { mpi_datatype_oarchive.cpp.CPP } } { gcc%gcc.compile.c++-packed_iarchive.o.OBJ { packed_iarchive.cpp.CPP } } { gcc%gcc.compile.c++-packed_oarchive.o.OBJ { packed_oarchive.cpp.CPP } } { gcc%gcc.compile.c++-packed_skeleton_iarchive.o.OBJ { packed_skeleton_iarchive.cpp.CPP } } { gcc%gcc.compile.c++-packed_skeleton_oarchive.o.OBJ { packed_skeleton_oarchive.cpp.CPP } } { gcc%gcc.compile.c++-point_to_point.o.OBJ { point_to_point.cpp.CPP } } { gcc%gcc.compile.c++-request.o.OBJ { request.cpp.CPP } } { gcc%gcc.compile.c++-text_skeleton_oarchive.o.OBJ { text_skeleton_oarchive.cpp.CPP } } { gcc%gcc.compile.c++-timer.o.OBJ { timer.cpp.CPP } } } { gcc%gcc.archive-libboost_serialization-mt.a.STATIC_LIB { gcc%gcc.compile.c++-basic_archive.o.OBJ { basic_archive.cpp.CPP } } { gcc%gcc.compile.c++-basic_iarchive.o.OBJ { basic_iarchive.cpp.CPP } } { gcc%gcc.compile.c++-basic_iserializer.o.OBJ { basic_iserializer.cpp.CPP } } { gcc%gcc.compile.c++-basic_oarchive.o.OBJ { basic_oarchive.cpp.CPP } } { gcc%gcc.compile.c++-basic_oserializer.o.OBJ { basic_oserializer.cpp.CPP } } { gcc%gcc.compile.c++-basic_pointer_iserializer.o.OBJ { basic_pointer_iserializer.cpp.CPP } } { gcc%gcc.compile.c++-basic_pointer_oserializer.o.OBJ { basic_pointer_oserializer.cpp.CPP } } { gcc%gcc.compile.c++-basic_serializer_map.o.OBJ { basic_serializer_map.cpp.CPP } } { gcc%gcc.compile.c++-basic_text_iprimitive.o.OBJ { basic_text_iprimitive.cpp.CPP } } { gcc%gcc.compile.c++-basic_text_oprimitive.o.OBJ { basic_text_oprimitive.cpp.CPP } } { gcc%gcc.compile.c++-basic_xml_archive.o.OBJ { basic_xml_archive.cpp.CPP } } { gcc%gcc.compile.c++-binary_iarchive.o.OBJ { binary_iarchive.cpp.CPP } } { gcc%gcc.compile.c++-binary_oarchive.o.OBJ { binary_oarchive.cpp.CPP } } { gcc%gcc.compile.c++-codecvt_null.o.OBJ { codecvt_null.cpp.CPP } } { gcc%gcc.compile.c++-extended_type_info.o.OBJ { extended_type_info.cpp.CPP } } { gcc%gcc.compile.c++-extended_type_info_no_rtti.o.OBJ { extended_type_info_no_rtti.cpp.CPP } } { gcc%gcc.compile.c++-extended_type_info_typeid.o.OBJ { extended_type_info_typeid.cpp.CPP } } { gcc%gcc.compile.c++-polymorphic_iarchive.o.OBJ { polymorphic_iarchive.cpp.CPP } } { gcc%gcc.compile.c++-polymorphic_oarchive.o.OBJ { polymorphic_oarchive.cpp.CPP } } { gcc%gcc.compile.c++-stl_port.o.OBJ { stl_port.cpp.CPP } } { gcc%gcc.compile.c++-text_iarchive.o.OBJ { text_iarchive.cpp.CPP } } { gcc%gcc.compile.c++-text_oarchive.o.OBJ { text_oarchive.cpp.CPP } } { gcc%gcc.compile.c++-void_cast.o.OBJ { void_cast.cpp.CPP } } { gcc%gcc.compile.c++-xml_grammar.o.OBJ { xml_grammar.cpp.CPP } } { gcc%gcc.compile.c++-xml_iarchive.o.OBJ { xml_iarchive.cpp.CPP } } { gcc%gcc.compile.c++-xml_oarchive.o.OBJ { xml_oarchive.cpp.CPP } } } } } error: created from ./install-proper-lib error: added properties: <define>BOOST_PYTHON_STATIC_LIB <library>object(file-target)@20365 <library>object(file-target)@20426 <library>object(file-target)@20523 <library>object(file-target)@20535 <link>static error: removed properties: <define>BOOST_PYTHON_DYNAMIC_LIB <library>object(file-target)@575 <library>object(file-target)@676 <library>object(file-target)@856 <link>shared <xdll-path>/home/cfairles/repos/boost/bin.v2/libs/mpi/build/gcc-4.1.1/release/threading-multi <xdll-path>/home/cfairles/repos/boost/bin.v2/libs/python/build/gcc-4.1.1/release/threading-multi <xdll-path>/home/cfairles/repos/boost/bin.v2/libs/serialization/build/gcc-4.1.1/release/threading-multi /home/cfairles/repos/boost/tools/build/v2/build/virtual-target.jam:459: in actualize-no-scanner from module object(file-target)@20868 /home/cfairles/repos/boost/tools/build/v2/build/virtual-target.jam:111: in object(file-target)@20868.actualize from module object(file-target)@20868 /home/cfairles/repos/boost/tools/build/v2/build-system.jam:476: in load from module build-system /home/cfairles/repos/boost/tools/build/v2/kernel/modules.jam:261: in import from module modules /home/cfairles/repos/boost/tools/build/v2/kernel/bootstrap.jam:132: in boost-build from module /home/cfairles/repos/boost/boost-build.jam:9: in module scope from module Not all Boost libraries built properly. Haven't found a workaround yet. Chris
On Jun 3, 2007, at 9:09 AM, Chris Fairles wrote:
Error #1:
Building with:
./tools/jam/src/bin.linux/bjam -d+2 -sICU_PATH=/usr variant=release threading=multi --layout=system --user-config=user-config.jam --with-date_time --with-filesystem --with-function_types --with-iostreams --with-mpi --with-program_options --with-python --with-serialization --with-signals --with-system --with-thread --with-test
I obtained the following linker error.
/usr/bin/ld: bin.v2/libs/mpi/build/gcc-4.1.1/release/link-static/ threading-multi/collectives.o: relocation R_X86_64_32 against `__dso_handle' can not be used when making a shared object; recompile with -fPIC
Solved by adding using gcc : : : <cxxflags>-fPIC ; to user-config.jam
Okay, thanks!
Error #2:
./tools/jam/src/bin.linux/bjam -d+2 -sICU_PATH=/usr variant=release threading=multi --layout=system --user-config=user-config.jam --prefix=/home/cfairles/usr --exec-prefix=/home/cfairles/usr --libdir=/home/cfairles/usr/lib64 --includedir=/home/cfairles/usr/include --with-date_time --with-filesystem --with-function_types --with-iostreams --with-mpi --with-program_options --with-python --with-serialization --with-signals --with-system --with-thread --with-test install /home/cfairles/repos/boost/tools/build/v2/build/virtual-target.jam: 996: in virtual-target.register-actual-name from module virtual-target error: Duplicate name of actual target:
mpi.so error: previous virtual target { common%common.copy-mpi.so.PYTHON_EXTENSION { [snip big error] Not all Boost libraries built properly.
Haven't found a workaround yet.
This is a know (but still unsolved!) problem with BBv2 and Boost.MPI's Python module. If you turn off Python support in user- config.jam, the rest of Boost.MPI should build and install correctly. I'm trying to find a real workaround, still. - Doug
participants (2)
-
Chris Fairles
-
Douglas Gregor