Boost C++ Libraries: Ticket #3717: boost.python doesn't compile with "using mpi" and python-3.1 https://svn.boost.org/trac10/ticket/3717 <p> The following two errors occurred when I tried to build boost 1.41 on gentoo with python 3.1. Complete log attached. </p> <p> gcc.compile.c++ bin.v2/libs/mpi/build/gcc-4.4/gentooreleas /threading-multi/python/datatypes.o </p> <blockquote> <p> "x86_64-pc-linux-gnu-g++" -ftemplate-depth-128 -O2 -march=x86-64 -mtune=core2 -pipe -fno-strict-aliasing -finline-functions -Wno-inline -Wall -pthread -fPIC -O2 -Wl,-O1 -Wl,-rpath -Wl,/usr/lib64 -march=x86-64 -mtune=core2 -pipe -DBOOST_ALL_NO_LIB=1 -DBOOST_MPI_DYN_LINK=1 -DBOOST_MPI_PYTHON_DYN_LINK=1 -DBOOST_PYTHON_DYN_LINK=1 -DNDEBUG -I"." -I"/usr/include" -I"/usr/include/python3.1" -c -o "bin.v2/libs/mpi/build/gcc-4.4/gentoorelease/threading-multi/python/datatypes.o" "libs/mpi/src/python/datatypes.cpp" </p> </blockquote> <p> libs/mpi/src/python/datatypes.cpp: In function 'void boost::mpi::python::export_datatypes()': libs/mpi/src/python/datatypes.cpp:20: error: 'PyInt_Type' was not declared in this scope gcc.compile.c++ bin.v2/libs/mpi/build/gcc-4.4/gentoorelease/threading-multi/python/py_environment.o </p> <blockquote> <p> "x86_64-pc-linux-gnu-g++" -ftemplate-depth-128 -O2 -march=x86-64 -mtune=core2 -pipe -fno-strict-aliasing -finline-functions -Wno-inline -Wall -pthread -fPIC -O2 -Wl,-O1 -Wl,-rpath -Wl,/usr/lib64 -march=x86-64 -mtune=core2 -pipe -DBOOST_ALL_NO_LIB=1 -DBOOST_MPI_DYN_LINK=1 -DBOOST_MPI_PYTHON_DYN_LINK=1 -DBOOST_PYTHON_DYN_LINK=1 -DNDEBUG -I"." -I"/usr/include" -I"/usr/include/python3.1" -c -o "bin.v2/libs/mpi/build/gcc-4.4/gentoorelease/threading-multi/python/py_environment.o" "libs/mpi/src/python/py_environment.cpp" </p> </blockquote> <p> libs/mpi/src/python/py_environment.cpp: In function 'bool boost::mpi::python::mpi_init(boost::python::list, bool)': libs/mpi/src/python/py_environment.cpp:53: error: cannot convert 'char<strong>' to 'wchar_t</strong>' for argument '2' to 'void PySys_SetArgv(int, wchar_t<strong>)' gcc.compile.c++ bin.v2/libs/mpi/build/gcc-4.4/gentoorelease/threading-multi/python/py_nonblocking.o </strong></p> en-us Boost C++ Libraries /htdocs/site/boost.png https://svn.boost.org/trac10/ticket/3717 Trac 1.4.3 Sebastian Mingramm <s.mingramm@…> Fri, 04 Dec 2009 19:56:30 GMT attachment set https://svn.boost.org/trac10/ticket/3717 https://svn.boost.org/trac10/ticket/3717 <ul> <li><strong>attachment</strong> → <span class="trac-field-new">build.log</span> </li> </ul> Ticket Steven Watanabe Sat, 05 Dec 2009 01:09:14 GMT component changed; owner set https://svn.boost.org/trac10/ticket/3717#comment:1 https://svn.boost.org/trac10/ticket/3717#comment:1 <ul> <li><strong>owner</strong> set to <span class="trac-author">Douglas Gregor</span> </li> <li><strong>component</strong> <span class="trac-field-old">Building Boost</span> → <span class="trac-field-new">mpi</span> </li> </ul> Ticket Matthias Troyer Wed, 03 Nov 2010 19:21:49 GMT <link>https://svn.boost.org/trac10/ticket/3717#comment:2 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/3717#comment:2</guid> <description> <p> The main problem seems to be that PySys_SetArgv uses wchar_t while MPI uses char as the type for argv. Short of converting the string type of all arguments back and forth I don't see a reasonable solution. </p> </description> <category>Ticket</category> </item> <item> <dc:creator>Matthias Troyer</dc:creator> <pubDate>Wed, 03 Nov 2010 19:38:03 GMT</pubDate> <title>status changed; resolution set https://svn.boost.org/trac10/ticket/3717#comment:3 https://svn.boost.org/trac10/ticket/3717#comment:3 <ul> <li><strong>status</strong> <span class="trac-field-old">new</span> → <span class="trac-field-new">closed</span> </li> <li><strong>resolution</strong> → <span class="trac-field-new">duplicate</span> </li> </ul> <p> <a class="assigned ticket" href="https://svn.boost.org/trac10/ticket/4657" title="#4657: Bugs: Boost.MPI Compile failure with Python 3 (assigned)">#4657</a> is a duplicate but contains a proposed patch. I'm thus closing this one as duplicate. </p> Ticket