newbie-problem with using boost.python
I am trying to build the example python code with boost by following the instructions on http://www.boost.org/libs/python/doc/tutorial/doc/html/python/hello.html but when I command "bjam -sTOOLS=msvc" on my command line (on WINDOWS XP) I am getting some error and messages like followings and I cannot get any boost_python.dll or hello.pyd. Thanks! ...found 1448 targets... ...updating 10 targets... vc-C++ ..\..\..\..\bin\boost\libs\python\build\boost_python.dll\msvc\debug\threadin g-multi\from_python.obj from_python.cpp D:\PROGRA~1\MICROS~3\VC98\INCLUDE\vector(420) : error C2664: '__thiscall std::vector<unsigned int,class std::allocator<unsigned int>
::std::vector<unsigned int,class std::allocator<unsigned int> >(unsigned int,const unsigned int &,const class std::allocator<unsigned int> &)' : cannot convert parameter 1 from 'const class std::allocator<unsigned int>' to 'unsigned int'
No user-defined-conversion operator available that can perform this conversion, or the operator cannot be called D:\PROGRA~1\MICROS~3\VC98\INCLUDE\vector(428) : error C2664: '__thiscall std::vector<unsigned int,class std::allocator<unsigned int>
::std::vector<unsigned int,class std::allocator<unsigned int> >(unsigned int,const unsigned int &,const class std::allocator<unsigned int> &)' : cannot convert parameter 1 from 'const class std::allocator<unsigned int>' to 'unsigned int' No user-defined-conversion operator available that can perform this conversion, or the operator cannot be called D:\Documents and Settings\ozi\Desktop\Phyton\boost_python\boost_1_32_0\libs\python\build\../s rc/converter/from_python.cpp(142) : error C2512: 'vector<struct boost::python::converter::rvalue_from_python_chain const *,class std::allocator<struct boost::python::converter::rvalue_from_python_chain const *> >' : no appropriate default constructor available
nul "D:\Program Files\Microsoft Visual Studio\VC98\bin\cl" /Zm800 -nologo /EHsc -c -DBOOST_PYTHON_DYNAMIC_LIB -DBOOST_PYTHON_SOURCE /Z7 /Od /Ob0 /EHsc /GR Dd -I"..\..\..\..\bin\boost\libs\python\build" -I"D:\Documents and Settings\ozi\Desktop\Phyton\boost_python\boost_1_32_0" -I"D:\Program Files\Python\include" -Fo"..\..\..\..\bin\boost\libs\python\build\boost_py
CALL "D:\Program Files\Microsoft Visual Studio\VC98\bin\VCVARS32.BAT" thon.dll\msvc\debug\threading-multi\from_python.obj" -Tp"D:\Documents and Settings\ozi\Desktop\Phyton\boost_python\boost_1_ 32_0\libs\python\build\../src/converter/from_python.cpp" ...failed vc-C++ ..\..\..\..\bin\boost\libs\python\build\boost_python.dll\msvc\debug\threadin g-multi\from_python.obj... vc-C++ ..\..\..\..\bin\boost\libs\python\build\boost_python.dll\msvc\debug\threadin g-multi\type_id.obj type_id.cpp D:\PROGRA~1\MICROS~3\VC98\INCLUDE\vector(420) : error C2664: '__thiscall std::vector<unsigned int,class std::allocator<unsigned int>
::std::vector<unsigned int,class std::allocator<unsigned int> >(unsigned int,const unsigned int &,const class std::allocator<unsigned int> &)' : cannot convert parameter 1 from 'const class std::allocator<unsigned int>' to 'unsigned int' No user-defined-conversion operator available that can perform this conversion, or the operator cannot be called D:\PROGRA~1\MICROS~3\VC98\INCLUDE\vector(428) : error C2664: '__thiscall std::vector<unsigned int,class std::allocator<unsigned int> ::std::vector<unsigned int,class std::allocator<unsigned int> >(unsigned int,const unsigned int &,const class std::allocator<unsigned int> &)' : cannot convert parameter 1 from 'const class std::allocator<unsigned int>' to 'unsigned int' No user-defined-conversion operator available that can perform this conversion, or the operator cannot be called
nul "D:\Program Files\Microsoft Visual Studio\VC98\bin\cl" /Zm800 -nologo /EHsc -c -DBOOST_PYTHON_DYNAMIC_LIB -DBOOST_PYTHON_SOURCE /Z7 /Od /Ob0 /EHsc /GR Dd -I"..\..\..\..\bin\boost\libs\python\build" -I"D:\Documents and Settings\ozi\Desktop\Phyton\boost_python\boost_1_32_0" -I"D:\Program Files\Python\include" -Fo"..\..\..\..\bin\boost\libs\python\build\boost_py
CALL "D:\Program Files\Microsoft Visual Studio\VC98\bin\VCVARS32.BAT" thon.dll\msvc\debug\threading-multi\type_id.obj" -Tp"D:\Documents and Settings\ozi\Desktop\Phyton\boost_python\boost_1_32_0 \libs\python\build\../src/converter/type_id.cpp" ...failed vc-C++ ..\..\..\..\bin\boost\libs\python\build\boost_python.dll\msvc\debug\threadin g-multi\type_id.obj... vc-C++ ..\..\..\..\bin\boost\libs\python\build\boost_python.dll\msvc\debug\threadin g-multi\class.obj class.cpp D:\PROGRA~1\MICROS~3\VC98\INCLUDE\vector(420) : error C2664: '__thiscall std::vector<unsigned int,class std::allocator<unsigned int>
::std::vector<unsigned int,class std::allocator<unsigned int> >(unsigned int,const unsigned int &,const class std::allocator<unsigned int> &)' : cannot convert parameter 1 from 'const class std::allocator<unsigned int>' to 'unsigned int' No user-defined-conversion operator available that can perform this conversion, or the operator cannot be called D:\PROGRA~1\MICROS~3\VC98\INCLUDE\vector(428) : error C2664: '__thiscall std::vector<unsigned int,class std::allocator<unsigned int> ::std::vector<unsigned int,class std::allocator<unsigned int> >(unsigned int,const unsigned int &,const class std::allocator<unsigned int> &)' : cannot convert parameter 1 from 'const class std::allocator<unsigned int>' to 'unsigned int' No user-defined-conversion operator available that can perform this conversion, or the operator cannot be called
nul "D:\Program Files\Microsoft Visual Studio\VC98\bin\cl" /Zm800 -nologo /EHsc -c -DBOOST_PYTHON_DYNAMIC_LIB -DBOOST_PYTHON_SOURCE /Z7 /Od /Ob0 /EHsc /GR Dd -I"..\..\..\..\bin\boost\libs\python\build" -I"D:\Documents and Settings\ozi\Desktop\Phyton\boost_python\boost_1_32_0" -I"D:\Program Files\Python\include" -Fo"..\..\..\..\bin\boost\libs\python\build\boost_py
::std::vector<unsigned int,class std::allocator<unsigned int> >(unsigned int,const unsigned int &,const class std::allocator<unsigned int> &)' : cannot convert parameter 1 from 'const class std::allocator<unsigned int>' to 'unsigned int' No user-defined-conversion operator available that can perform this conversion, or the operator cannot be called D:\PROGRA~1\MICROS~3\VC98\INCLUDE\vector(428) : error C2664: '__thiscall std::vector<unsigned int,class std::allocator<unsigned int> ::std::vector<unsigned int,class std::allocator<unsigned int> >(unsigned int,const unsigned int &,const class std::allocator<unsigned int> &)' : cannot convert parameter 1 from 'const class std::allocator<unsigned int>' to 'unsigned int' No user-defined-conversion operator available that can perform this conversion, or the operator cannot be called D:\Documents and Settings\ozi\Desktop\Phyton\boost_python\boost_1_32_0\boost/tuple/detail/tup le_basic_no_partial_spec.hpp(100) : error C2504: 'add_reference' : base class undefined D:\Documents and Settings\ozi\Desktop\Phyton\boost_python\boost_1_32_0\boost/tuple/detail/tup le_basic_no_partial_spec.hpp(100) : see reference to class template instantiation 'detail::add_const_reference<T>' being compiled D:\Documents and Settings\ozi\Desktop\Phyton\boost_python\boost_1_32_0\boost/tuple/detail/tup le_basic_no_partial_spec.hpp(100) : error C2143: syntax error : missing ',' before '<' D:\Documents and Settings\ozi\Desktop\Phyton\boost_python\boost_1_32_0\boost/tuple/detail/tup le_basic_no_partial_spec.hpp(100) : see reference to class template instantiation 'detail::add_const_reference<T>' being compiled D:\Documents and Settings\ozi\Desktop\Phyton\boost_python\boost_1_32_0\boost/tuple/detail/tup le_basic_no_partial_spec.hpp(100) : error C2059: syntax error : '<' D:\Documents and Settings\ozi\Desktop\Phyton\boost_python\boost_1_32_0\boost/tuple/detail/tup le_basic_no_partial_spec.hpp(100) : see reference to class template instantiation 'detail::add_const_reference<T>' being compiled D:\Documents and Settings\ozi\Desktop\Phyton\boost_python\boost_1_32_0\boost/tuple/detail/tup le_basic_no_partial_spec.hpp(100) : error C2518: keyword 'typename' illegal in base class list; ignored D:\Documents and Settings\ozi\Desktop\Phyton\boost_python\boost_1_32_0\boost/tuple/detail/tup le_basic_no_partial_spec.hpp(100) : see reference to class template instantiation 'detail::add_const_reference<T>' being compiled D:\Documents and Settings\ozi\Desktop\Phyton\boost_python\boost_1_32_0\boost/tuple/detail/tup le_basic_no_partial_spec.hpp(100) : error C2039: 'type' : is not a member of '`global namespace'' D:\Documents and Settings\ozi\Desktop\Phyton\boost_python\boost_1_32_0\boost/tuple/detail/tup le_basic_no_partial_spec.hpp(100) : see reference to class template instantiation 'detail::add_const_reference<T>' being compiled D:\Documents and Settings\ozi\Desktop\Phyton\boost_python\boost_1_32_0\boost/tuple/detail/tup le_basic_no_partial_spec.hpp(109) : error C2143: syntax error : missing ';' before '<' D:\Documents and Settings\ozi\Desktop\Phyton\boost_python\boost_1_32_0\boost/tuple/detail/tup le_basic_no_partial_spec.hpp(117) : see reference to class template instantiation 'detail::init_tail<MyTail>' being compiled D:\Documents and Settings\ozi\Desktop\Phyton\boost_python\boost_1_32_0\boost/tuple/detail/tup le_basic_no_partial_spec.hpp(109) : error C2059: syntax error : ';' D:\Documents and Settings\ozi\Desktop\Phyton\boost_python\boost_1_32_0\boost/tuple/detail/tup le_basic_no_partial_spec.hpp(117) : see reference to class template instantiation 'detail::init_tail<MyTail>' being compiled D:\Documents and Settings\ozi\Desktop\Phyton\boost_python\boost_1_32_0\boost/tuple/detail/tup le_basic_no_partial_spec.hpp(109) : error C2238: unexpected token(s)
nul "D:\Program Files\Microsoft Visual Studio\VC98\bin\cl" /Zm800 -nologo /EHsc -c -DBOOST_PYTHON_DYNAMIC_LIB -DBOOST_PYTHON_SOURCE /Z7 /Od /Ob0 /EHsc /GR Dd -I"..\..\..\..\bin\boost\libs\python\build" -I"D:\Documents and Settings\ozi\Desktop\Phyton\boost_python\boost_1_32_0" -I"D:\Program Files\Python\include" -Fo"..\..\..\..\bin\boost\libs\python\build\boost_py
CALL "D:\Program Files\Microsoft Visual Studio\VC98\bin\VCVARS32.BAT" thon.dll\msvc\debug\threading-multi\class.obj" -Tp"D:\Documents and Settings\ozi\Desktop\Phyton\boost_python\boost_1_32_0\l ibs\python\build\../src/object/class.cpp" ...failed vc-C++ ..\..\..\..\bin\boost\libs\python\build\boost_python.dll\msvc\debug\threadin g-multi\class.obj... vc-C++ ..\..\..\..\bin\boost\libs\python\build\boost_python.dll\msvc\debug\threadin g-multi\inheritance.obj inheritance.cpp D:\PROGRA~1\MICROS~3\VC98\INCLUDE\vector(420) : error C2664: '__thiscall std::vector<unsigned int,class std::allocator<unsigned int> preceding ';' D:\Documents and Settings\ozi\Desktop\Phyton\boost_python\boost_1_32_0\boost/tuple/detail/tup le_basic_no_partial_spec.hpp(117) : see reference to class template instantiation 'detail::init_tail<MyTail>' being compiled D:\Documents and Settings\ozi\Desktop\Phyton\boost_python\boost_1_32_0\boost/tuple/detail/tup le_basic_no_partial_spec.hpp(109) : error C2059: syntax error : '<' D:\Documents and Settings\ozi\Desktop\Phyton\boost_python\boost_1_32_0\boost/tuple/detail/tup le_basic_no_partial_spec.hpp(117) : see reference to class template instantiation 'detail::init_tail<MyTail>' being compiled D:\Documents and Settings\ozi\Desktop\Phyton\boost_python\boost_1_32_0\boost/tuple/detail/tup le_basic_no_partial_spec.hpp(109) : error C2039: 'type' : is not a member of '`global namespace'' D:\Documents and Settings\ozi\Desktop\Phyton\boost_python\boost_1_32_0\boost/tuple/detail/tup le_basic_no_partial_spec.hpp(117) : see reference to class template instantiation 'detail::init_tail<MyTail>' being compiled D:\Documents and Settings\ozi\Desktop\Phyton\boost_python\boost_1_32_0\boost/tuple/detail/tup le_basic_no_partial_spec.hpp(109) : error C2039: 'type' : is not a member of '`global namespace'' D:\Documents and Settings\ozi\Desktop\Phyton\boost_python\boost_1_32_0\boost/tuple/detail/tup le_basic_no_partial_spec.hpp(117) : see reference to class template instantiation 'detail::init_tail<MyTail>' being compiled D:\Documents and Settings\ozi\Desktop\Phyton\boost_python\boost_1_32_0\boost/tuple/detail/tup le_basic_no_partial_spec.hpp(117) : error C2143: syntax error : missing ';' before '}' D:\Documents and Settings\ozi\Desktop\Phyton\boost_python\boost_1_32_0\boost/tuple/detail/tup le_basic_no_partial_spec.hpp(117) : see reference to class template instantiation 'detail::init_tail<MyTail>' being compiled D:\Documents and Settings\ozi\Desktop\Phyton\boost_python\boost_1_32_0\boost/tuple/detail/tup le_basic_no_partial_spec.hpp(117) : error C2238: unexpected token(s) preceding ';' D:\Documents and Settings\ozi\Desktop\Phyton\boost_python\boost_1_32_0\boost/tuple/detail/tup le_basic_no_partial_spec.hpp(117) : see reference to class template instantiation 'detail::init_tail<MyTail>' being compiled D:\Documents and Settings\ozi\Desktop\Phyton\boost_python\boost_1_32_0\boost/tuple/detail/tup le_basic_no_partial_spec.hpp(179) : error C2327: 'cons<Head,Tail>::head' : member from enclosing class is not a type name, static, or enumerator D:\Documents and Settings\ozi\Desktop\Phyton\boost_python\boost_1_32_0\boost/tuple/detail/tup le_basic_no_partial_spec.hpp(221) : see reference to class template instantiation 'cons<Head,Tail>' being compiled D:\Documents and Settings\ozi\Desktop\Phyton\boost_python\boost_1_32_0\boost/tuple/detail/tup le_basic_no_partial_spec.hpp(179) : error C2065: 'head' : undeclared identifier D:\Documents and Settings\ozi\Desktop\Phyton\boost_python\boost_1_32_0\boost/tuple/detail/tup le_basic_no_partial_spec.hpp(221) : see reference to class template instantiation 'cons<Head,Tail>' being compiled D:\Documents and Settings\ozi\Desktop\Phyton\boost_python\boost_1_32_0\boost/tuple/detail/tup le_basic_no_partial_spec.hpp(179) : error C2656: 'cons' : function not allowed as a bit field D:\Documents and Settings\ozi\Desktop\Phyton\boost_python\boost_1_32_0\boost/tuple/detail/tup le_basic_no_partial_spec.hpp(221) : see reference to class template instantiation 'cons<Head,Tail>' being compiled D:\Documents and Settings\ozi\Desktop\Phyton\boost_python\boost_1_32_0\boost/tuple/detail/tup le_basic_no_partial_spec.hpp(179) : error C2040: 'tail' : 'int (void)' differs in levels of indirection from '' D:\Documents and Settings\ozi\Desktop\Phyton\boost_python\boost_1_32_0\boost/tuple/detail/tup le_basic_no_partial_spec.hpp(221) : see reference to class template instantiation 'cons<Head,Tail>' being compiled D:\Documents and Settings\ozi\Desktop\Phyton\boost_python\boost_1_32_0\boost/tuple/detail/tup le_basic_no_partial_spec.hpp(179) : error C2143: syntax error : missing ';' before '{' D:\Documents and Settings\ozi\Desktop\Phyton\boost_python\boost_1_32_0\boost/tuple/detail/tup le_basic_no_partial_spec.hpp(221) : see reference to class template instantiation 'cons<Head,Tail>' being compiled D:\Documents and Settings\ozi\Desktop\Phyton\boost_python\boost_1_32_0\boost/tuple/detail/tup le_basic_no_partial_spec.hpp(179) : error C2334: unexpected token(s) preceding '{'; skipping apparent function body D:\Documents and Settings\ozi\Desktop\Phyton\boost_python\boost_1_32_0\boost/tuple/detail/tup le_basic_no_partial_spec.hpp(221) : see reference to class template instantiation 'cons<Head,Tail>' being compiled D:\Documents and Settings\ozi\Desktop\Phyton\boost_python\boost_1_32_0\boost/tuple/detail/tup le_basic_no_partial_spec.hpp(221) : error C2059: syntax error : 'End of Token Stream' D:\Documents and Settings\ozi\Desktop\Phyton\boost_python\boost_1_32_0\boost/tuple/detail/tup le_basic_no_partial_spec.hpp(221) : see reference to class template instantiation 'cons<Head,Tail>' being compiled D:\Documents and Settings\ozi\Desktop\Phyton\boost_python\boost_1_32_0\boost/tuple/detail/tup le_basic_no_partial_spec.hpp(221) : error C2238: unexpected token(s) preceding ';' D:\Documents and Settings\ozi\Desktop\Phyton\boost_python\boost_1_32_0\boost/tuple/detail/tup le_basic_no_partial_spec.hpp(221) : see reference to class template instantiation 'cons<Head,Tail>' being compiled D:\Documents and Settings\ozi\Desktop\Phyton\boost_python\boost_1_32_0\boost/tuple/detail/tup le_basic_no_partial_spec.hpp(221) : fatal error C1201: unable to continue after syntax error in template class definition D:\Documents and Settings\ozi\Desktop\Phyton\boost_python\boost_1_32_0\boost/tuple/detail/tup le_basic_no_partial_spec.hpp(221) : see reference to class template instantiation 'cons<Head,Tail>' being compiled CALL "D:\Program Files\Microsoft Visual Studio\VC98\bin\VCVARS32.BAT" thon.dll\msvc\debug\threading-multi\inheritance.obj" -Tp"D:\Documents and Settings\ozi\Desktop\Phyton\boost_python\boost_1_ 32_0\libs\python\build\../src/object/inheritance.cpp" ...failed vc-C++ ..\..\..\..\bin\boost\libs\python\build\boost_python.dll\msvc\debug\threadin g-multi\inheritance.obj... ...skipped <@boost!libs!python!build\boost_python.dll\msvc\debug\threading-multi>boost_ python.CMD for lack of <@boost!libs!python!build\boost_python.dll\msvc\debug\threading-multi>from_p ython.obj... ...skipped <@boost!libs!python!build\boost_python.dll\msvc\debug\threading-multi>boost_ python.dll for lack of <@boost!libs!python!build\boost_python.dll\msvc\debug\threading-multi>boost_ python.CMD... ...skipped <@boost!libs!python!build\boost_python.dll\msvc\debug\threading-multi>boost_ python.lib for lack of <@boost!libs!python!build\boost_python.dll\msvc\debug\threading-multi>boost_ python.CMD... ...skipped <@boost!libs!python!example!tutorial\hello.pyd\msvc\debug\threading-multi>he llo.CMD for lack of <@boost!libs!python!build\boost_python.dll\msvc\debug\threading-multi>boost_ python.lib... ...skipped <@boost!libs!python!example!tutorial\hello.pyd\msvc\debug\threading-multi>he llo.pyd for lack of <@boost!libs!python!build\boost_python.dll\msvc\debug\threading-multi>boost_ python.dll... ...skipped <@boost!libs!python!example!tutorial\hello.pyd\msvc\debug\threading-multi>he llo.lib for lack of <@boost!libs!python!build\boost_python.dll\msvc\debug\threading-multi>boost_ python.dll... ...failed updating 4 targets... ...skipped 6 targets... D:\Documents and Settings\ozi\Desktop\Phyton\boost_python\boost_1_32_0\libs\python\example\tu torial> --------------------------------- Do you Yahoo!? Read only the mail you want - Yahoo! Mail SpamGuard.
ozan wrote:
I am trying to build the example python code with boost by following the instructions on http://www.boost.org/libs/python/doc/tutorial/doc/html/python/hello.html but when I command "bjam -sTOOLS=msvc" on my command line (on WINDOWS XP) I am getting some error and messages like followings and I cannot get any boost_python.dll or hello.pyd.
Thanks!
....found 1448 targets... ....updating 10 targets... vc-C++ ...\..\..\..\bin\boost\libs\python\build\boost_python.dll\msvc\debug\threadin g-multi\from_python.obj from_python.cpp
D:\PROGRA~1\MICROS~3\VC98\INCLUDE\vector(420) : error C2664: '__thiscall std::vector<unsigned int,class std::allocator<unsigned int>
::std::vector<unsigned int,class std::allocator<unsigned int> >(unsigned int,const unsigned int &,const class std::allocator<unsigned int> &)' : cannot convert parameter 1 from 'const class std::allocator<unsigned int>' to 'unsigned int'
I'm at a loss to explain this. Unless you haven't installed all of the VC6 service packs or have an outdated version of Boost, or something on your system has been modified unintentionally, there's no mention of std::vector<unsigned int> in that entire translation unit (I preprocessed it and looked at the output). Of course, vc6 is so buggy, that sort of niggling detail never stopped it from barfing before ;-) All I can say is that it works here for me. Sorry, otherwise I have no clue. -- Dave Abrahams Boost Consulting http://www.boost-consulting.com
participants (2)
-
David Abrahams
-
ozan