Boost logo

Boost :

From: SourceForge.net (noreply_at_[hidden])
Date: 2004-12-12 01:56:03


Bugs item #1083760, was opened at 2004-12-12 01:56
Message generated for change (Tracker Item Submitted) made by Item Submitter
You can respond by visiting:
https://sourceforge.net/tracker/?func=detail&atid=107586&aid=1083760&group_id=7586

Category: Python
Group: None
Status: Open
Resolution: None
Priority: 5
Submitted By: AIM (andre_mikulec)
Assigned to: David Abrahams (david_abrahams)
Summary: Error in msvc in building inheritance.obj to build hello.pyd

Initial Comment:
Error in msvc in building inheritance.obj to build hello.pyd

Hello,

I am trying to build the boost 1.31.0 sample extension
hello.cpp.
I can not compile the file inheritance.cpp because the
two
files containing some templates: adjacency_list.hpp and
mem_fn.hpp can not compile.

Does anyone have any solutions?
Instead of Visual C++ 6.0 should I use a different
compiler?
Anyone have any success on any other compiler?

Did anyone manage to build a hello.pyd?

Thank you very much.
Here is my script below (with embedded results).

rem I have MSVC 6.0 Service Pack 5 on Windows 2000
Service Pack 3 default installs on F:
rem Python is located in F:\Python23
rem Boost is located in W:\boost_1_31_0
rem MSVC stlPort 4.6.2 installed, compiled and
rem VC studio include dirs and libraries dirs configured to
use it.

rem build boost.jam (so I have a bjam.exe for all below)
W:
vcvars32.bat
cd W:\boost_1_31_0\tools\build\jam_src
rem below since I have multilple toolsets installed I will
always be specific.
.\build.bat msvc
rem result: 2 minutes later: NO WARN NO ERRORS
dir W:\boost_1_31_0\tools\build\jam_src\bin.ntx86\*
rem result: OK I have *jam*.exe executables: bjam.exe
jam.exe mkjambase.exe yyacc.exe

rem build boost (using boost.jam (bjam from above))
W:
vcvars32.bat
set PYTHON_ROOT=F:\Python23
set PYTHON_VERSION=2.3
set PATH=%PATH%;W:\boost_1_31_0
\tools\build\jam_src\bin.ntx86
rem APPEND THE BJAM PATH ABOVE TO THE SYSTEM
ENVRONMENT VARIABLE PATH
cd W:\boost_1_31_0
rem below since I have multilple toolsets installed I will
always be specific.
bjam "-sTOOLS=msvc" install

rem about 90 minutes later ERROR RESULTS FOLLOW:
<<< errors.txt contents below >>>

cl /Zm800 -nologo -GX -c -DNDEBUG -DNDEBUG -
DBOOST_PYTHON_DYNAMIC_LIB -
DBOOST_PYTHON_SOURCE /Ogity /O2 /Gs /Ob2 /GX /GR
/MD -I"bin\boost\libs\python\build" -
I"W:\boost_1_31_0" -I"F:\Python23\include" -
I"F:\Program Files\Microsoft Visual Studio\VC98
\Include" -
Fo"bin\boost\libs\python\build\boost_python.dll\msvc\rele
ase\inheritance.obj" -Tp"W:\boost_1_31_0
\libs\python\build\../src/object/inheritance.cpp"

rem error below results below ...

F:\Program Files\Microsoft Visual Studio\VC98
\Bin>cl /Zm800 -nologo -GX -c -DNDEBUG -DNDEBUG -
DBOOST_PYTHON_DYNAMIC_LIB -
DBOOST_PYTHON_SOURCE /Ogity /O2 /Gs /Ob2 /GX /GR
/MD -I"bin\boost\libs\python\build" -
I"W:\boost_1_31_0" -I"F:\Python23\include"
-I"F:\Program Files\Microsoft Visual Studio\VC98
\Include" -
Fo"bin\boost\libs\python\build\boost_python.dll\msvc\rele
ase\inheritance.obj" -Tp"W:\boost_1_31_0
\libs\python\build\../src/object/inheritance.cpp"
inheritance.cpp
W:\boost_1_31_0\boost/graph/detail/adjacency_list.hpp
(1055) : error
C2244: 'bidirectional_graph_helper_with_property<Config
>::remove_edge' : unable to resolve function overload
W:\boost_1_31_0\boost/graph/detail/adjacency_list.hpp
(1057) : error C2954: template definitions cannot nest
W:\boost_1_31_0\boost/mem_fn.hpp(315) : error
C2039: 'dm' : is not a member of '_mfi'
W:\boost_1_31_0\boost/mem_fn.hpp(315) : error
C2143: syntax error : missing ';' before '<'
W:\boost_1_31_0\boost/mem_fn.hpp(315) : error
C2501: 'dm' : missing storage-class or type specifiers
W:\boost_1_31_0\boost/mem_fn.hpp(315) : error
C2059: syntax error : ';'
W:\boost_1_31_0\boost/mem_fn.hpp(315) : error
C2059: syntax error : '<'
W:\boost_1_31_0\boost/mem_fn.hpp(315) : error
C2653: 'T' : is not a class or namespace name
W:\boost_1_31_0\boost/mem_fn.hpp(315) : error
C2645: no qualified name for pointer to member
(found ':: *')
W:\boost_1_31_0\boost/mem_fn.hpp(320) : error
C2143: syntax error : missing ';' before '}'
W:\boost_1_31_0\boost/mem_fn.hpp(320) : fatal error
C1506: unrecoverable block scoping error

F:\Program Files\Microsoft Visual Studio\VC98\Bin>

W:\boost_1_31_0\boost/graph/detail/adjacency_list.hpp
(1055) : error
C2244: 'bidirectional_graph_helper_with_property<Config
>::remove_edge' : unable to resolve function overload
W:\boost_1_31_0\boost/graph/detail/adjacency_list.hpp
(1057) : error C2954: template definitions cannot nest

rem the problem area in adjacency_list.hpp is here ...

template <class Config>
    inline void
    
bidirectional_graph_helper_with_property<Config>::remov
e_edge(typename Config::edge_descriptor e)
    {
      typedef typename Config::graph_type graph_type;
      graph_type& g = static_cast<graph_type&>(*this);
      boost::remove_edge(source(e, g), target(e, g),
*this);
    }
    // O(E/V) or O(log(E/V))
    template <class EdgeOrIter, class Config>
    inline void
    remove_edge(EdgeOrIter e,
                
bidirectional_graph_helper_with_property<Config>& g_)
    {
      g_.remove_edge(e);
    }

W:\boost_1_31_0\boost/mem_fn.hpp(315) : error
C2039: 'dm' : is not a member of '_mfi'
W:\boost_1_31_0\boost/mem_fn.hpp(315) : error
C2143: syntax error : missing ';' before '<'
W:\boost_1_31_0\boost/mem_fn.hpp(315) : error
C2501: 'dm' : missing storage-class or type specifiers
W:\boost_1_31_0\boost/mem_fn.hpp(315) : error
C2059: syntax error : ';'
W:\boost_1_31_0\boost/mem_fn.hpp(315) : error
C2059: syntax error : '<'
W:\boost_1_31_0\boost/mem_fn.hpp(315) : error
C2653: 'T' : is not a class or namespace name
W:\boost_1_31_0\boost/mem_fn.hpp(315) : error
C2645: no qualified name for pointer to member
(found ':: *')
W:\boost_1_31_0\boost/mem_fn.hpp(320) : error
C2143: syntax error : missing ';' before '}'
W:\boost_1_31_0\boost/mem_fn.hpp(320) : fatal error
C1506: unrecoverable block scoping error

rem The problem area in mem_fn.hpp is here ...

creating a template class at the end of mem_fn.hpp
template<class R, class T> _mfi::dm<R, T> mem_fn(R
T::*f)
{
    return _mfi::dm<R, T>(f);
}

} // namespace boost

rem build hello world
W:
vcvars32.bat
set PYTHON_ROOT=F:\Python23
set PYTHON_VERSION=2.3
set PATH=%PATH%;W:\boost_1_31_0
\tools\build\jam_src\bin.ntx86
rem APPEND THE BJAM PATH ABOVE TO THE SYSTEM
ENVRONMENT VARIABLE PATH
cd W:\boost_1_31_0\libs\python\example\tutorial
bjam -sTOOLS=msvc

The results are as follows

W:\boost_1_31_0\libs\python\example\tutorial>bjam -
sTOOLS=msvc
...found 1978 targets...
...updating 7 targets...
vc-
C++ ..\..\..\..\bin\boost\libs\python\build\boost_python.d
ll\msvc\debug\inheritance.obj
inheritance.cpp
W:\boost_1_31_0\boost/graph/detail/adjacency_list.hpp
(1055) : error
C2244: 'bidirectional_graph_helper_with_property<Config
>::remove_edge' : unable to resolve function overload
W:\boost_1_31_0\boost/graph/detail/adjacency_list.hpp
(1057) : error C2954: template definitions cannot nest
W:\boost_1_31_0\boost/mem_fn.hpp(315) : error
C2039: 'dm' : is not a member of '_mfi'
W:\boost_1_31_0\boost/mem_fn.hpp(315) : error
C2143: syntax error : missing ';' before '<'
W:\boost_1_31_0\boost/mem_fn.hpp(315) : error
C2501: 'dm' : missing storage-class or type specifiers
W:\boost_1_31_0\boost/mem_fn.hpp(315) : error
C2059: syntax error : ';'
W:\boost_1_31_0\boost/mem_fn.hpp(315) : error
C2059: syntax error : '<'
W:\boost_1_31_0\boost/mem_fn.hpp(315) : error
C2653: 'T' : is not a class or namespace name
W:\boost_1_31_0\boost/mem_fn.hpp(315) : error
C2645: no qualified name for pointer to member
(found ':: *')
W:\boost_1_31_0\boost/mem_fn.hpp(320) : error
C2143: syntax error : missing ';' before '}'
W:\boost_1_31_0\boost/mem_fn.hpp(320) : fatal error
C1506: unrecoverable block scoping error

    "cl" /Zm800 -nologo -GX -c -
DBOOST_PYTHON_DYNAMIC_LIB -
DBOOST_PYTHON_SOURCE /Z7 /Od /Ob0 /GX /GR /MDd
 -I"..\..\..\..\bin\boost\libs\python\build" -
I"W:\boost_1_31_0" -I"F:\Python23\include" -
I"F:\PROGRA~1\MICROS~3\VC98\include" -Fo"..\..\..\..
\bin\boost\libs\python\build\boost_python.dll\msvc\debug
\inheritance.obj" -Tp"W:\boost_1_31_0
\libs\python\build\../src/object/inheritance.cpp"

...failed vc-
C++ ..\..\..\..\bin\boost\libs\python\build\boost_python.d
ll\msvc\debug\inheritance.obj...
...skipped <@boost!libs!python!
build\boost_python.dll\msvc\debug>boost_python.CMD
for lack of <@boost!libs!python!
build\boost_python.dll\msvc\debug>inheritance.obj...
...skipped <@boost!libs!python!
build\boost_python.dll\msvc\debug>boost_python.dll for
lack of <@boost!libs!python!
build\boost_python.dll\msvc\debug>boost_python.CMD...
...skipped <@boost!libs!python!
build\boost_python.dll\msvc\debug>boost_python.lib for
lack of <@boost!libs!python!
build\boost_python.dll\msvc\debug>boost_python.CMD...
...skipped <@boost!libs!python!example!
tutorial\hello.pyd\msvc\debug>hello.CMD for lack of
<@boost!libs!python!
build\boost_python.dll\msvc\debug>boost_python.lib...
...skipped <@boost!libs!python!example!
tutorial\hello.pyd\msvc\debug>hello.pyd for lack of
<@boost!libs!python!
build\boost_python.dll\msvc\debug>boost_python.dll...
...skipped <@boost!libs!python!example!
tutorial\hello.pyd\msvc\debug>hello.lib for lack of
<@boost!libs!python!
build\boost_python.dll\msvc\debug>boost_python.dll...
...failed updating 1 target...
...skipped 6 targets...

W:\boost_1_31_0\libs\python\example\tutorial>dir
hello*.*
rem results: ALL hello.CMD hello.pyd hello.lib NOT FOUND

Any Ideas about a possible solution?

AIM
Andre_Mikulec_at_[hidden]

----------------------------------------------------------------------

You can respond by visiting:
https://sourceforge.net/tracker/?func=detail&atid=107586&aid=1083760&group_id=7586

-------------------------------------------------------
SF email is sponsored by - The IT Product Guide
Read honest & candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now.
http://productguide.itmanagersjournal.com/
_______________________________________________
Boost-bugs mailing list
Boost-bugs_at_[hidden]
https://lists.sourceforge.net/lists/listinfo/boost-bugs


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk