[Nfd-dev] [Ndn-interest] NLSR build error

Alex Afanasyev aa at CS.UCLA.EDU
Wed Aug 31 13:52:48 PDT 2016


(I have moved this conversation to nfd-dev@ mailing list.)

From the error, I'm more than sure that it is causing by the library version mistmatch.  To compile the latest version (master branch) of NLSR and  NFD, you need to download, compile, and install the latest version (master branch) of ndn-cxx library.

--
Alex

> On Aug 31, 2016, at 7:30 AM, Ashlesh Gawande (agawande) <agawande at memphis.edu> wrote:
> 
> Whats the version of ndn-cxx and NFD? Can you try updating ndn-cxx and NFD (install them from source) and then compile NLSR again?
> 
> Ashlesh
> From: Ndn-interest <ndn-interest-bounces at lists.cs.ucla.edu> on behalf of Alexander Ni <alexni1992 at gmail.com>
> Sent: Tuesday, August 30, 2016 9:10:01 PM
> To: ndn-interest at lists.cs.ucla.edu
> Subject: [Ndn-interest] NLSR build error
> 
> Hello,
> 
> I tried to build NLSR (0.3.0-6-g63bd034), but get next error.
> 
> [root at Producer1 NLSR]# ./waf configure
> Setting top to                           : /usr/ndn/NLSR
> Setting out to                           : /usr/ndn/NLSR/build
> Checking for 'g++' (C++ compiler)        : /usr/lib64/ccache/g++
> Checking supported CXXFLAGS              : -std=c++11
> Checking supported CXXFLAGS              : -O2 -g -pedantic -Wall -Wextra -Wno-unused-parameter -fdiagnostics-color
> Checking for program 'doxygen'           : /usr/bin/doxygen
> Checking for program 'tar'               : /usr/bin/tar
> Checking for program 'sphinx-build'      : /usr/bin/sphinx-build
> Checking for program 'pkg-config'        : /usr/bin/pkg-config
> Checking for 'libndn-cxx'                : yes
> Checking for 'liblog4cxx'                : yes
> Checking for OpenSSL library             : yes
> Checking boost includes                  : 1.58.0
> Checking boost libs                      : ok
> Checking for boost linkage               : ok
> Checking for 'protobuf'                  : yes
> Checking for program 'protoc'            : /usr/bin/protoc
> 'configure' finished successfully (7.053s)
> [root at Producer1 NLSR]# ./waf
> Waf: Entering directory `/usr/ndn/NLSR/build'
> [ 1/57] Compiling src/version.hpp.in <http://version.hpp.in/>
> [ 2/57] Processing nsync/sync-state.proto
> [ 3/57] Processing sphinx_build [man]: docs/manpages/nlsr.conf.rst docs/manpages/nlsr.rst docs/manpages/nlsrc.rst docs/conf.py -> build/docs/manpages/nlsr.1 build/docs/manpages/nlsr.conf.5 build/docs/manpages/nlsrc.1
> 
> [ 4/57] Compiling src/main.cpp
> [ 5/57] Compiling src/tlv/coordinate-lsa.cpp
> [ 6/57] Compiling src/tlv/adjacency.cpp
> [ 7/57] Compiling src/tlv/adjacency-lsa.cpp
> [ 8/57] Compiling src/sequencing-manager.cpp
> [ 9/57] Compiling src/route/routing-table-calculator.cpp
> [11/57] Compiling src/route/name-prefix-table-entry.cpp
> [11/57] Compiling src/route/map.cpp
> [12/57] Compiling src/publisher/lsdb-status-publisher.cpp
> [13/57] Compiling src/nlsr.cpp
> [14/57] Compiling src/logger.cpp
> [15/57] Compiling src/conf-file-processor.cpp
> [16/57] Compiling src/adjacency-list.cpp
> [17/57] Compiling nsync/sync-logging.cc
> [18/57] Compiling nsync/sync-full-leaf.cc
> [19/57] Compiling nsync/sync-diff-state.cc
> [20/57] Compiling nsync/sync-diff-leaf.cc
> [21/57] Compiling src/conf-parameter.cpp
> [22/57] Compiling src/lsa.cpp
> [23/57] Compiling src/nlsr-runner.cpp
> [24/57] Compiling src/route/fib-entry.cpp
> [25/57] Compiling src/route/name-prefix-table.cpp
> [26/57] Compiling src/route/routing-table.cpp
> [27/57] Compiling src/tlv/lsa-info.cpp
> [28/57] Compiling src/tlv/name-lsa.cpp
> [29/57] Compiling tools/nlsrc.cpp
> [30/57] Compiling src/tlv/lsdb-status.cpp
> [31/57] Compiling src/publisher/lsdb-dataset-interest-handler.cpp
> [32/57] Compiling src/publisher/lsa-publisher.cpp
> [33/57] Compiling src/name-prefix-list.cpp
> [34/57] Compiling src/communication/sync-logic-handler.cpp
> [35/57] Compiling nsync/sync-std-name-info.cc
> [36/57] Compiling nsync/sync-name-info.cc
> [37/57] Compiling nsync/sync-logic.cc
> [38/57] Compiling nsync/sync-full-state.cc
> [39/57] Compiling nsync/sync-digest.cc
> [40/57] Compiling nsync/sync-interest-table.cc
> [41/57] Compiling nsync/sync-leaf.cc
> [42/57] Compiling nsync/sync-seq-no.cc
> [43/57] Compiling nsync/sync-socket.cc
> [45/57] Compiling build/nsync/sync-state.pb.cc <http://sync-state.pb.cc/>
> [44/57] Compiling nsync/sync-state.cc
> [46/57] Compiling src/adjacent.cpp
> [47/57] Compiling src/hello-protocol.cpp
> [48/57] Compiling src/lsdb.cpp
> [49/57] Compiling src/route/face-map.cpp
> [50/57] Compiling src/route/fib.cpp
> [51/57] Compiling src/route/nexthop-list.cpp
> [52/57] Compiling src/route/nexthop.cpp
> [53/57] Compiling src/update/prefix-update-commands.cpp
> [54/57] Compiling src/update/prefix-update-processor.cpp
> [55/57] Compiling src/utility/face-controller.cpp
> ../src/utility/face-controller.cpp: In member function ‘void nlsr::util::FaceController::onCanonizeFailure(const string&, const CommandSuccessCallback&, const CommandFailureCallback&, const ndn::util::FaceUri&)’:
> ../src/utility/face-controller.cpp:79:13: error: ‘ControlResponse’ is not a member of ‘ndn::nfd’
>    onFailure(ndn::nfd::ControlResponse(CANONIZE_ERROR_CODE,
>              ^
> 
> In file included from ../src/route/fib.cpp:32:0:
> ../src/route/fib.hpp:166:41: error: ‘ControlResponse’ in namespace ‘ndn::nfd’ does not name a type
>    onRegistrationFailure(const ndn::nfd::ControlResponse& response,
>                                          ^
> ../src/route/fib.hpp:173:43: error: ‘ControlResponse’ in namespace ‘ndn::nfd’ does not name a type
>    onUnregistrationFailure(const ndn::nfd::ControlResponse& response,
>                                            ^
> ../src/route/fib.hpp:181:40: error: ‘ControlResponse’ in namespace ‘ndn::nfd’ does not name a type
>    onSetStrategyFailure(const ndn::nfd::ControlResponse& response,
>                                         ^
> ../src/route/fib.cpp:470:44: error: ‘ControlResponse’ in namespace ‘ndn::nfd’ does not name a type
>  Fib::onRegistrationFailure(const ndn::nfd::ControlResponse& response,
>                                             ^
> ../src/route/fib.cpp: In member function ‘void nlsr::Fib::onRegistrationFailure(const int&, const string&, const ndn::nfd::ControlParameters&, const string&, uint8_t)’:
> ../src/route/fib.cpp:476:30: error: request for member ‘getText’ in ‘response’, which is of non-class type ‘const int’
>    _LOG_DEBUG(message << ": " << response.getText() << " (code: " << response.getCode() << ")");
>                               ^
> ../src/route/fib.cpp:476:66: error: request for member ‘getCode’ in ‘response’, which is of non-class type ‘const int’
>    _LOG_DEBUG(message << ": " << response.getText() << " (code: " << response.getCode() << ")");
>                                                                   ^
> ../src/route/fib.cpp: At global scope:
> ../src/route/fib.cpp:491:46: error: ‘ControlResponse’ in namespace ‘ndn::nfd’ does not name a type
>  Fib::onUnregistrationFailure(const ndn::nfd::ControlResponse& response,
>                                               ^
> ../src/route/fib.cpp: In member function ‘void nlsr::Fib::onUnregistrationFailure(const int&, const string&)’:
> ../src/route/fib.cpp:494:30: error: request for member ‘getText’ in ‘response’, which is of non-class type ‘const int’
>    _LOG_DEBUG(message << ": " << response.getText() << " (code: " << response.getCode() << ")");
>                               ^
> ../src/route/fib.cpp:494:66: error: request for member ‘getCode’ in ‘response’, which is of non-class type ‘const int’
>    _LOG_DEBUG(message << ": " << response.getText() << " (code: " << response.getCode() << ")");
>                                                                   ^
> ../src/route/fib.cpp: At global scope:
> ../src/route/fib.cpp:506:43: error: ‘ControlResponse’ in namespace ‘ndn::nfd’ does not name a type
>  Fib::onSetStrategyFailure(const ndn::nfd::ControlResponse& response,
>                                            ^
> 
> ../src/nlsr.cpp: In member function ‘void nlsr::Nlsr::destroyFaces()’:
> ../src/nlsr.cpp:341:71: error: no matching function for call to ‘nlsr::Fib::destroyFace(const string&, std::_Bind_helper<false, void (nlsr::Nlsr::*)(const ndn::nfd::ControlParameters&), nlsr::Nlsr*, const std::_Placeholder<1>&>::type, std::_Bind_helper<false, void (nlsr::Nlsr::*)(const ndn::mgmt::ControlResponse&), nlsr::Nlsr*, const std::_Placeholder<1>&>::type)’
>                        std::bind(&Nlsr::onDestroyFaceFailure, this, _1));
>                                                                        ^
> In file included from ../src/nlsr.hpp:46:0,
>                  from ../src/nlsr.cpp:28:
> ../src/route/fib.hpp:127:3: note: candidate: void nlsr::Fib::destroyFace(const string&, const CommandSucceedCallback&, const CommandFailCallback&)
>    destroyFace(const std::string& faceUri,
>    ^
> ../src/route/fib.hpp:127:3: note:   no known conversion for argument 3 from ‘std::_Bind_helper<false, void (nlsr::Nlsr::*)(const ndn::mgmt::ControlResponse&), nlsr::Nlsr*, const std::_Placeholder<1>&>::type {aka std::_Bind<std::_Mem_fn<void (nlsr::Nlsr::*)(const ndn::mgmt::ControlResponse&)>(nlsr::Nlsr*, std::_Placeholder<1>)>}’ to ‘const CommandFailCallback& {aka const std::function<void(unsigned int, const std::__cxx11::basic_string<char>&)>&}’
> 
> ../src/hello-protocol.cpp: In member function ‘void nlsr::HelloProtocol::registerPrefixes(const ndn::Name&, const string&, double, const milliseconds&)’:
> ../src/hello-protocol.cpp:215:62: error: no matching function for call to ‘nlsr::Fib::registerPrefix(const ndn::Name&, const string&, double&, const milliseconds&, ndn::nfd::RouteFlags, int, std::_Bind_helper<false, void (nlsr::HelloProtocol::*)(const ndn::nfd::ControlParameters&, const ndn::Name&, const boost::chrono::duration<long int, boost::ratio<1l, 1000l> >&), nlsr::HelloProtocol*, const std::_Placeholder<1>&, const ndn::Name&, const boost::chrono::duration<long int, boost::ratio<1l, 1000l> >&>::type, std::_Bind_helper<false, void (nlsr::HelloProtocol::*)(const ndn::mgmt::ControlResponse&, const ndn::Name&), nlsr::HelloProtocol*, const std::_Placeholder<1>&, const ndn::Name&>::type)’
>                                             this, _1, adjName));
>                                                               ^
> In file included from ../src/nlsr.hpp:46:0,
>                  from ../src/hello-protocol.cpp:24:
> ../src/route/fib.hpp:105:3: note: candidate: void nlsr::Fib::registerPrefix(const ndn::Name&, const string&, uint64_t, const milliseconds&, uint64_t, uint8_t)
>    registerPrefix(const ndn::Name& namePrefix, const std::string& faceUri,
>    ^
> ../src/route/fib.hpp:105:3: note:   candidate expects 6 arguments, 8 provided
> ../src/route/fib.hpp:111:3: note: candidate: void nlsr::Fib::registerPrefix(const ndn::Name&, const string&, uint64_t, const milliseconds&, uint64_t, uint8_t, const CommandSucceedCallback&, const CommandFailCallback&)
>    registerPrefix(const ndn::Name& namePrefix,
>    ^
> ../src/route/fib.hpp:111:3: note:   no known conversion for argument 8 from ‘std::_Bind_helper<false, void (nlsr::HelloProtocol::*)(const ndn::mgmt::ControlResponse&, const ndn::Name&), nlsr::HelloProtocol*, const std::_Placeholder<1>&, const ndn::Name&>::type {aka std::_Bind<std::_Mem_fn<void (nlsr::HelloProtocol::*)(const ndn::mgmt::ControlResponse&, const ndn::Name&)>(nlsr::HelloProtocol*, std::_Placeholder<1>, ndn::Name)>}’ to ‘const CommandFailCallback& {aka const std::function<void(unsigned int, const std::__cxx11::basic_string<char>&)>&}’
> 
> Waf: Leaving directory `/usr/ndn/NLSR/build'
> Build failed
>  -> task in 'nlsr-objects' failed (exit status 1):
>     {task 140328346116752: cxx face-controller.cpp -> face-controller.cpp.3.o}
> ['/usr/lib64/ccache/g++', '-O2', '-g', '-pedantic', '-Wall', '-Wextra', '-Wno-unused-parameter', '-fdiagnostics-color', '-std=c++11', '-I/usr/ndn/NLSR/build', '-I/usr/ndn/NLSR', '-I/usr/ndn/NLSR/build/src', '-I/usr/ndn/NLSR/src', '-I/usr/ndn/NLSR/build/nsync', '-I/usr/ndn/NLSR/nsync', '-I/usr/include', '-I/usr/local/include', '-DNDEBUG', '-DHAVE_NDN_CXX=1', '-DHAVE_LOG4CXX=1', '-DHAVE_PROTOBUF=1', '../src/utility/face-controller.cpp', '-c', '-o', '/usr/ndn/NLSR/build/src/utility/face-controller.cpp.3.o']
>  -> task in 'nlsr-objects' failed (exit status 1):
>     {task 140328346085264: cxx fib.cpp -> fib.cpp.3.o}
> ['/usr/lib64/ccache/g++', '-O2', '-g', '-pedantic', '-Wall', '-Wextra', '-Wno-unused-parameter', '-fdiagnostics-color', '-std=c++11', '-I/usr/ndn/NLSR/build', '-I/usr/ndn/NLSR', '-I/usr/ndn/NLSR/build/src', '-I/usr/ndn/NLSR/src', '-I/usr/ndn/NLSR/build/nsync', '-I/usr/ndn/NLSR/nsync', '-I/usr/include', '-I/usr/local/include', '-DNDEBUG', '-DHAVE_NDN_CXX=1', '-DHAVE_LOG4CXX=1', '-DHAVE_PROTOBUF=1', '../src/route/fib.cpp', '-c', '-o', '/usr/ndn/NLSR/build/src/route/fib.cpp.3.o']
>  -> task in 'nlsr-objects' failed (exit status 1):
>     {task 140328346084432: cxx nlsr.cpp -> nlsr.cpp.3.o}
> ['/usr/lib64/ccache/g++', '-O2', '-g', '-pedantic', '-Wall', '-Wextra', '-Wno-unused-parameter', '-fdiagnostics-color', '-std=c++11', '-I/usr/ndn/NLSR/build', '-I/usr/ndn/NLSR', '-I/usr/ndn/NLSR/build/src', '-I/usr/ndn/NLSR/src', '-I/usr/ndn/NLSR/build/nsync', '-I/usr/ndn/NLSR/nsync', '-I/usr/include', '-I/usr/local/include', '-DNDEBUG', '-DHAVE_NDN_CXX=1', '-DHAVE_LOG4CXX=1', '-DHAVE_PROTOBUF=1', '../src/nlsr.cpp', '-c', '-o', '/usr/ndn/NLSR/build/src/nlsr.cpp.3.o']
>  -> task in 'nlsr-objects' failed (exit status 1):
>     {task 140328346083600: cxx hello-protocol.cpp -> hello-protocol.cpp.3.o}
> ['/usr/lib64/ccache/g++', '-O2', '-g', '-pedantic', '-Wall', '-Wextra', '-Wno-unused-parameter', '-fdiagnostics-color', '-std=c++11', '-I/usr/ndn/NLSR/build', '-I/usr/ndn/NLSR', '-I/usr/ndn/NLSR/build/src', '-I/usr/ndn/NLSR/src', '-I/usr/ndn/NLSR/build/nsync', '-I/usr/ndn/NLSR/nsync', '-I/usr/include', '-I/usr/local/include', '-DNDEBUG', '-DHAVE_NDN_CXX=1', '-DHAVE_LOG4CXX=1', '-DHAVE_PROTOBUF=1', '../src/hello-protocol.cpp', '-c', '-o', '/usr/ndn/NLSR/build/src/hello-protocol.cpp.3.o']
> 
> Best Regards,
> Alexander Ni
> 
> _______________________________________________
> Ndn-interest mailing list
> Ndn-interest at lists.cs.ucla.edu
> http://www.lists.cs.ucla.edu/mailman/listinfo/ndn-interest

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.lists.cs.ucla.edu/pipermail/nfd-dev/attachments/20160831/14093133/attachment.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 841 bytes
Desc: Message signed with OpenPGP using GPGMail
URL: <http://www.lists.cs.ucla.edu/pipermail/nfd-dev/attachments/20160831/14093133/attachment.bin>


More information about the Nfd-dev mailing list