On 07/14/2015 05:39 AM, Ioannis Konstadelias wrote:
Hi everyone,
I tried to install dyninst 8.2.1 and after the resolving of the library
dependencies I found the compilation stuck in a point that,
I think, there is nothing I can do for it to solve it.
My cmake command was that one:
â cmake /home/gon1332/Downloads/Dyninst-8.2.1
-DBOOST_ROOT=/usr/local -DLIBDWARF_INCLUDE_DIR=/usr/local/dwarf
-DLIBDWARF_LIBRARIES=/usr/local/lib/libdwarf.so
Haven't seen this one before on the slicing code, but I have seen this
flavor of compilation error. What version of gcc and boost are you
using? You may need to either upgrade boost or tweak the bind headers to
allow more bound arguments.
--bw
and the make output (including the error) the one below:
â make
[ 0%] Building DyninstRT
[ 50%] Built target dyninstAPI_RT
[100%] Built target dyninstAPI_RT_static
[ 0%] Built target DyninstRT
[ 1%] Built target LibIberty
[ 7%] Built target common
[ 13%] Built target common_static
[ 13%] Built target dynElf
[ 13%] Built target dynElf_static
[ 13%] Built target dynDwarf
[ 14%] Built target dynDwarf_static
[ 14%] Built target symLite
[ 14%] Built target symLite_static
[ 19%] Built target symtabAPI
[ 23%] Built target pcontrol
[ 25%] Built target instructionAPI
[ 25%] Building CXX object
parseAPI/CMakeFiles/parseAPI.dir/__/dataflowAPI/src/slicing.C.o
/home/gon1332/Downloads/Dyninst-8.2.1/dataflowAPI/src/slicing.C: In
member function âbool
Dyninst::Slicer::getPredecessors(Dyninst::Slicer::Predicates&, const
Dyninst::Slicer::SliceFrame&,
std::vector<Dyninst::Slicer::SliceFrame>&)â:
/home/gon1332/Downloads/Dyninst-8.2.1/dataflowAPI/src/slicing.C:733:9:
error: call of overloaded âbind(void
(Dyninst::Slicer::*)(Dyninst::ParseAPI::Edge*,
Dyninst::Slicer::Predicates&, const Dyninst::Slicer::SliceFrame&,
std::vector<Dyninst::Slicer::SliceFrame>&, bool&,
Dyninst::Slicer::SliceFrame&), Dyninst::Slicer* const,
boost::arg<1>&, const
boost::reference_wrapper<Dyninst::Slicer::Predicates>, const
boost::reference_wrapper<const Dyninst::Slicer::SliceFrame>, const
boost::reference_wrapper<std::vector<Dyninst::Slicer::SliceFrame> >,
const boost::reference_wrapper<bool>, const
boost::reference_wrapper<Dyninst::Slicer::SliceFrame>)â is ambiguous
));
^
/home/gon1332/Downloads/Dyninst-8.2.1/dataflowAPI/src/slicing.C:733:9:
note: candidates are:
In file included from /usr/local/include/boost/bind.hpp:22:0,
from
/home/gon1332/Downloads/Dyninst-8.2.1/dataflowAPI/src/slicing.C:52:
/usr/local/include/boost/bind/bind.hpp:1642:5: note:
boost::_bi::bind_t<R, F, typename boost::_bi::list_av_7<A1, A2, A3,
A4, A5, A6, A7>::type> boost::bind(F, A1, A2, A3, A4, A5, A6, A7)
[with R = void; F = void
(Dyninst::Slicer::*)(Dyninst::ParseAPI::Edge*,
Dyninst::Slicer::Predicates&, const Dyninst::Slicer::SliceFrame&,
std::vector<Dyninst::Slicer::SliceFrame>&, bool&,
Dyninst::Slicer::SliceFrame&); A1 = Dyninst::Slicer*; A2 =
boost::arg<1>; A3 =
boost::reference_wrapper<Dyninst::Slicer::Predicates>; A4 =
boost::reference_wrapper<const Dyninst::Slicer::SliceFrame>; A5 =
boost::reference_wrapper<std::vector<Dyninst::Slicer::SliceFrame> >;
A6 = boost::reference_wrapper<bool>; A7 =
boost::reference_wrapper<Dyninst::Slicer::SliceFrame>; typename
boost::_bi::list_av_7<A1, A2, A3, A4, A5, A6, A7>::type =
boost::_bi::list7<boost::_bi::value<Dyninst::Slicer*>,
boost::arg<1>,
boost::reference_wrapper<Dyninst::Slicer::Predicates>,
boost::reference_wrapper<const Dyninst::Slicer::SliceFrame>,
boost::reference_wrapper<std::vector<Dyninst::Slicer::SliceFrame> >,
boost::reference_wrapper<bool>,
boost::reference_wrapper<Dyninst::Slicer::SliceFrame> >]
BOOST_BIND(F f, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7)
^
/usr/local/include/boost/bind/bind_mf_cc.hpp:293:5: note:
boost::_bi::bind_t<R, boost::_mfi::mf6<R, T, A1, A2, A3, A4, A5,
A6>, typename boost::_bi::list_av_7<A1, A2, A3, A4, A5, A6,
A7>::type> boost::bind(R (T::*)(B1, B2, B3, B4, B5, B6), A1, A2, A3,
A4, A5, A6, A7) [with R = void; T = Dyninst::Slicer; B1 =
Dyninst::ParseAPI::Edge*; B2 = Dyninst::Slicer::Predicates&; B3 =
const Dyninst::Slicer::SliceFrame&; B4 =
std::vector<Dyninst::Slicer::SliceFrame>&; B5 = bool&; B6 =
Dyninst::Slicer::SliceFrame&; A1 = Dyninst::Slicer*; A2 =
boost::arg<1>; A3 =
boost::reference_wrapper<Dyninst::Slicer::Predicates>; A4 =
boost::reference_wrapper<const Dyninst::Slicer::SliceFrame>; A5 =
boost::reference_wrapper<std::vector<Dyninst::Slicer::SliceFrame> >;
A6 = boost::reference_wrapper<bool>; A7 =
boost::reference_wrapper<Dyninst::Slicer::SliceFrame>; typename
boost::_bi::list_av_7<A1, A2, A3, A4, A5, A6, A7>::type =
boost::_bi::list7<boost::_bi::value<Dyninst::Slicer*>,
boost::arg<1>,
boost::reference_wrapper<Dyninst::Slicer::Predicates>,
boost::reference_wrapper<const Dyninst::Slicer::SliceFrame>,
boost::reference_wrapper<std::vector<Dyninst::Slicer::SliceFrame> >,
boost::reference_wrapper<bool>,
boost::reference_wrapper<Dyninst::Slicer::SliceFrame> >]
BOOST_BIND(R (BOOST_BIND_MF_CC T::*f) (B1, B2, B3, B4, B5,
B6), A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7)
^
/usr/local/include/boost/bind/bind_mf_cc.hpp:315:5: note:
boost::_bi::bind_t<Rt2, boost::_mfi::mf6<R, T, B1, B2, B3, B4, B5,
B6>, typename boost::_bi::list_av_7<A1, A2, A3, A4, A5, A6,
A7>::type> boost::bind(R (T::*)(B1, B2, B3, B4, B5, B6), A1, A2, A3,
A4, A5, A6, A7) [with Rt2 = void; R = void; T = Dyninst::Slicer; B1
= Dyninst::ParseAPI::Edge*; B2 = Dyninst::Slicer::Predicates&; B3 =
const Dyninst::Slicer::SliceFrame&; B4 =
std::vector<Dyninst::Slicer::SliceFrame>&; B5 = bool&; B6 =
Dyninst::Slicer::SliceFrame&; A1 = Dyninst::Slicer*; A2 =
boost::arg<1>; A3 =
boost::reference_wrapper<Dyninst::Slicer::Predicates>; A4 =
boost::reference_wrapper<const Dyninst::Slicer::SliceFrame>; A5 =
boost::reference_wrapper<std::vector<Dyninst::Slicer::SliceFrame> >;
A6 = boost::reference_wrapper<bool>; A7 =
boost::reference_wrapper<Dyninst::Slicer::SliceFrame>; typename
boost::_bi::list_av_7<A1, A2, A3, A4, A5, A6, A7>::type =
boost::_bi::list7<boost::_bi::value<Dyninst::Slicer*>,
boost::arg<1>,
boost::reference_wrapper<Dyninst::Slicer::Predicates>,
boost::reference_wrapper<const Dyninst::Slicer::SliceFrame>,
boost::reference_wrapper<std::vector<Dyninst::Slicer::SliceFrame> >,
boost::reference_wrapper<bool>,
boost::reference_wrapper<Dyninst::Slicer::SliceFrame> >]
BOOST_BIND(R (BOOST_BIND_MF_CC T::*f) (B1, B2, B3, B4, B5,
B6), A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7)
^
make[2]: ***
[parseAPI/CMakeFiles/parseAPI.dir/__/dataflowAPI/src/slicing.C.o]
Error 1
make[1]: *** [parseAPI/CMakeFiles/parseAPI.dir/all] Error 2
make: *** [all] Error 2
_______________________________________________
Dyninst-api mailing list
Dyninst-api@xxxxxxxxxxx
https://lists.cs.wisc.edu/mailman/listinfo/dyninst-api
--
--bw
Bill Williams
Paradyn Project
bill@xxxxxxxxxxx
|