[Nfd-dev] Error compiling NFD 0.6.0 on Ubuntu 16.04.3

Tianxiang Li tianxiang at cs.ucla.edu
Wed Oct 18 17:09:33 PDT 2017


Hi Davide,

Thank you for the reply and suggestion. This is the first time I'm installing ndn-cxx and nfd on this machine. And the following is my installation process:
1. I first installed ndn-cxx 0.6.0 
2. Then I installed NFD using "apt-get install nfd" command , and this error message appeared:

Job for nfd.service failed because the control process exited with error code. See "systemctl status nfd.service" and "journalctl -xe"
for details.
nfd service couldn't start.

3. I removed NFD using "apt-get purge nfd" command. 
4. I then installed NFD 0.6.0, tried to compile it and this error message appeared:

[140/157] Linking build/bin/nfd
../daemon/face/face.cpp:49: error: undefined reference to 'ndn::operator<<(std::ostream&, ndn::FaceUri const&)'
../daemon/face/face.cpp:50: error: undefined reference to 'ndn::operator<<(std::ostream&, ndn::FaceUri const&)'
/usr/local/include/ndn-cxx/lp/field-decl.hpp:89: error: undefined reference to 'unsigned long ndn::encoding::prependNonNegativeIntegerBlock<(ndn::encoding::Tag)0>(ndn::encoding::EncodingImpl<(ndn::encoding::Tag)0>&, unsigned int, unsigned long)'
/usr/local/include/ndn-cxx/lp/field-decl.hpp:89: error: undefined reference to 'unsigned long ndn::encoding::prependNonNegativeIntegerBlock<(ndn::encoding::Tag)1>(ndn::encoding::EncodingImpl<(ndn::encoding::Tag)1>&, unsigned int, unsigned long)'
/usr/local/include/ndn-cxx/lp/field-decl.hpp:89: error: undefined reference to 'unsigned long ndn::encoding::prependNonNegativeIntegerBlock<(ndn::encoding::Tag)0>(ndn::encoding::EncodingImpl<(ndn::encoding::Tag)0>&, unsigned int, unsigned long)'
/usr/local/include/ndn-cxx/lp/field-decl.hpp:89: error: undefined reference to 'unsigned long ndn::encoding::prependNonNegativeIntegerBlock<(ndn::encoding::Tag)1>(ndn::encoding::EncodingImpl<(ndn::encoding::Tag)1>&, unsigned int, unsigned long)'
/usr/local/include/ndn-cxx/lp/field-decl.hpp:89: error: undefined reference to 'unsigned long ndn::encoding::prependNonNegativeIntegerBlock<(ndn::encoding::Tag)0>(ndn::encoding::EncodingImpl<(ndn::encoding::Tag)0>&, unsigned int, unsigned long)'
/usr/local/include/ndn-cxx/lp/field-decl.hpp:89: error: undefined reference to 'unsigned long ndn::encoding::prependNonNegativeIntegerBlock<(ndn::encoding::Tag)1>(ndn::encoding::EncodingImpl<(ndn::encoding::Tag)1>&, unsigned int, unsigned long)'
/usr/local/include/ndn-cxx/lp/field-decl.hpp:79: error: undefined reference to 'unsigned long ndn::lp::NackHeader::wireEncode<(ndn::encoding::Tag)0>(ndn::encoding::EncodingImpl<(ndn::encoding::Tag)0>&) const'
/usr/local/include/ndn-cxx/lp/field-decl.hpp:79: error: undefined reference to 'unsigned long ndn::lp::NackHeader::wireEncode<(ndn::encoding::Tag)1>(ndn::encoding::EncodingImpl<(ndn::encoding::Tag)1>&) const'
/usr/local/include/ndn-cxx/util/backports.hpp:75: error: undefined reference to 'ndn::FaceUri::FaceUri(char const*)'
/usr/local/include/ndn-cxx/util/backports.hpp:75: error: undefined reference to 'ndn::FaceUri::FaceUri(char const*)'
/usr/include/c++/5/ext/new_allocator.h:120: error: undefined reference to 'ndn::Face::Face(std::shared_ptr<ndn::Transport>, boost::asio::io_service&, ndn::security::v2::KeyChain&)'
../daemon/face/link-service.cpp:125: error: undefined reference to 'ndn::operator<<(std::ostream&, ndn::FaceUri const&)'
../daemon/face/link-service.cpp:126: error: undefined reference to 'ndn::operator<<(std::ostream&, ndn::FaceUri const&)'
/usr/local/include/ndn-cxx/lp/field-decl.hpp:89: error: undefined reference to 'unsigned long ndn::encoding::prependNonNegativeIntegerBlock<(ndn::encoding::Tag)0>(ndn::encoding::EncodingImpl<(ndn::encoding::Tag)0>&, unsigned int, unsigned long)'
/usr/local/include/ndn-cxx/lp/field-decl.hpp:89: error: undefined reference to 'unsigned long ndn::encoding::prependNonNegativeIntegerBlock<(ndn::encoding::Tag)1>(ndn::encoding::EncodingImpl<(ndn::encoding::Tag)1>&, unsigned int, unsigned long)'
../daemon/face/multicast-udp-transport.cpp:44: error: undefined reference to 'ndn::FaceUri::FaceUri(boost::asio::ip::basic_endpoint<boost::asio::ip::udp> const&)'
../daemon/face/multicast-udp-transport.cpp:45: error: undefined reference to 'ndn::FaceUri::FaceUri(boost::asio::ip::basic_endpoint<boost::asio::ip::udp> const&)'
../daemon/face/multicast-udp-transport.cpp:44: error: undefined reference to 'ndn::FaceUri::FaceUri(boost::asio::ip::basic_endpoint<boost::asio::ip::udp> const&)'
../daemon/face/multicast-udp-transport.cpp:45: error: undefined reference to 'ndn::FaceUri::FaceUri(boost::asio::ip::basic_endpoint<boost::asio::ip::udp> const&)'
../daemon/face/channel.hpp:52: error: undefined reference to 'ndn::FaceUri::FaceUri()'
../daemon/face/tcp-channel.cpp:43: error: undefined reference to 'ndn::FaceUri::FaceUri(boost::asio::ip::basic_endpoint<boost::asio::ip::tcp> const&)'
../daemon/face/tcp-factory.cpp:148: error: undefined reference to 'ndn::ip::addressFromString(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
../daemon/face/tcp-transport.cpp:141: error: undefined reference to 'ndn::FaceUri::FaceUri(boost::asio::ip::basic_endpoint<boost::asio::ip::tcp> const&)'
../daemon/face/tcp-transport.cpp:42: error: undefined reference to 'ndn::FaceUri::FaceUri(boost::asio::ip::basic_endpoint<boost::asio::ip::tcp> const&)'
../daemon/face/tcp-transport.cpp:43: error: undefined reference to 'ndn::FaceUri::FaceUri(boost::asio::ip::basic_endpoint<boost::asio::ip::tcp> const&)'
../daemon/face/transport.cpp:67: error: undefined reference to 'ndn::FaceUri::FaceUri()'
../daemon/face/transport.cpp:67: error: undefined reference to 'ndn::FaceUri::FaceUri()'
../daemon/face/transport.cpp:67: error: undefined reference to 'ndn::FaceUri::FaceUri()'
../daemon/face/udp-factory.cpp:301: error: undefined reference to 'ndn::FaceUri::operator==(ndn::FaceUri const&) const'
../daemon/face/udp-factory.cpp:232: error: undefined reference to 'ndn::ip::addressFromString(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
../daemon/face/udp-factory.cpp:383: error: undefined reference to 'ndn::ip::addressFromString(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
../daemon/face/udp-factory.cpp:385: error: undefined reference to 'ndn::ip::addressFromString(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
../daemon/face/udp-factory.cpp:454: error: undefined reference to 'ndn::net::NetworkMonitor::listNetworkInterfaces() const'
../daemon/fw/forwarder.cpp:107: error: undefined reference to 'ndn:elegationList:elegationList()'
../daemon/fw/forwarder.cpp:107: error: undefined reference to 'ndn::Interest::setForwardingHint(ndn:elegationList const&)'
../daemon/fw/process-nack-traits.cpp:49: error: undefined reference to 'ndn::lp::isLessSevere(ndn::lp::NackReason, ndn::lp::NackReason)'
../daemon/fw/strategy.cpp:138: error: undefined reference to 'ndn::Name::at(long) const'
/usr/local/include/ndn-cxx/util/backports.hpp:75: error: undefined reference to 'ndn::security::v2::ValidationPolicyCommandInterest::ValidationPolicyCommandInterest(std::unique_ptr<ndn::security::v2::ValidationPolicy, std::default_delete<ndn::security::v2::ValidationPolicy> >, ndn::security::v2::ValidationPolicyCommandInterest::Options const&)'
../daemon/mgmt/command-authenticator.cpp:75: error: undefined reference to 'ndn::security::v2::getKeyLocatorName(ndn::Interest const&, ndn::security::v2::ValidationState&)'
../daemon/mgmt/command-authenticator.cpp:86: error: undefined reference to 'ndn::Interest::Interest(ndn::Name const&, boost::chrono::duration<long, boost::ratio<1l, 1000l> >)'
../daemon/mgmt/face-manager.cpp:358: error: undefined reference to 'ndn::FaceUri::toString[abi:cxx11]() const'
../daemon/mgmt/face-manager.cpp:363: error: undefined reference to 'ndn::FaceUri::toString[abi:cxx11]() const'
../daemon/mgmt/face-manager.cpp:310: error: undefined reference to 'ndn::FaceUri::toString[abi:cxx11]() const'
../daemon/mgmt/face-manager.cpp:82: error: undefined reference to 'ndn::FaceUri::parse(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
../daemon/mgmt/face-manager.cpp:88: error: undefined reference to 'ndn::FaceUri::isCanonical() const'
../daemon/mgmt/face-manager.cpp:89: error: undefined reference to 'ndn::FaceUri::toString[abi:cxx11]() const'
../daemon/mgmt/face-manager.cpp:98: error: undefined reference to 'ndn::FaceUri::parse(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
../daemon/mgmt/face-manager.cpp:104: error: undefined reference to 'ndn::FaceUri::isCanonical() const'
/usr/include/c++/5/ext/new_allocator.h:120: error: undefined reference to 'ndn::net::NetworkMonitor::NetworkMonitor(boost::asio::io_service&)'
../daemon/nfd.cpp:136: error: undefined reference to 'ndn::mgmt:ispatcher:ispatcher(ndn::Face&, ndn::security::v2::KeyChain&, ndn::security::SigningInfo const&, unsigned long)'
../daemon/nfd.cpp:80: error: undefined reference to 'ndn::FaceUri::FaceUri(char const*)'
../daemon/nfd.cpp:81: error: undefined reference to 'ndn::FaceUri::FaceUri(char const*)'
../daemon/face/ethernet-channel.cpp:228: error: undefined reference to 'ndn::ethernet::Address::toString[abi:cxx11](char) const'
../daemon/face/ethernet-channel.cpp:230: error: undefined reference to 'ndn::ethernet::Address::toString[abi:cxx11](char) const'
../daemon/face/ethernet-channel.cpp:51: error: undefined reference to 'ndn::FaceUri::fromDev(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
/usr/include/boost/log/utility/formatting_ostream.hpp:710: error: undefined reference to 'ndn::ethernet::operator<<(std::ostream&, ndn::ethernet::Address const&)'
/usr/include/boost/log/utility/formatting_ostream.hpp:710: error: undefined reference to 'ndn::ethernet::operator<<(std::ostream&, ndn::ethernet::Address const&)'
/usr/include/boost/log/utility/formatting_ostream.hpp:710: error: undefined reference to 'ndn::ethernet::operator<<(std::ostream&, ndn::ethernet::Address const&)'
/usr/include/boost/log/utility/formatting_ostream.hpp:710: error: undefined reference to 'ndn::ethernet::operator<<(std::ostream&, ndn::ethernet::Address const&)'
../daemon/face/ethernet-channel.cpp:141: error: undefined reference to 'ndn::ethernet::Address::Address(unsigned char const*)'
../daemon/face/ethernet-factory.hpp:116: error: undefined reference to 'ndn::ethernet::getDefaultMulticastAddress()'
../daemon/face/ethernet-factory.cpp:187: error: undefined reference to 'ndn::ethernet::Address::fromString(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
../daemon/face/ethernet-factory.cpp:190: error: undefined reference to 'ndn::ethernet::Address::isMulticast() const'
../daemon/face/ethernet-factory.cpp:278: error: undefined reference to 'ndn::ethernet::Address::isNull() const'
../daemon/face/ethernet-factory.cpp:317: error: undefined reference to 'ndn::ethernet::Address::isNull() const'
../daemon/face/ethernet-factory.cpp:359: error: undefined reference to 'ndn::net::NetworkMonitor::listNetworkInterfaces() const'
../daemon/face/ethernet-factory.hpp:116: error: undefined reference to 'ndn::ethernet::getDefaultMulticastAddress()'
../daemon/face/ethernet-factory.cpp:97: error: undefined reference to 'ndn::ethernet::Address::fromString(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
../daemon/face/ethernet-factory.cpp:98: error: undefined reference to 'ndn::ethernet::Address::isNull() const'
../daemon/face/ethernet-factory.cpp:102: error: undefined reference to 'ndn::ethernet::Address::isMulticast() const'
../daemon/face/ethernet-transport.cpp:196: error: undefined reference to 'ndn::ethernet::Address::isMulticast() const'
../daemon/face/ethernet-transport.cpp:155: error: undefined reference to 'ndn::ethernet::Address::isMulticast() const'
../daemon/face/ethernet-transport.cpp:160: error: undefined reference to 'ndn::ethernet::Address::Address(unsigned char const*)'
../daemon/face/multicast-ethernet-transport.cpp:59: error: undefined reference to 'ndn::FaceUri::fromDev(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
../daemon/face/multicast-ethernet-transport.cpp:60: error: undefined reference to 'ndn::FaceUri::FaceUri(ndn::ethernet::Address const&)'
../daemon/face/multicast-ethernet-transport.cpp:77: error: undefined reference to 'ndn::ethernet::Address::toString[abi:cxx11](char) const'
../daemon/face/multicast-ethernet-transport.cpp:76: error: undefined reference to 'ndn::ethernet::Address::toString[abi:cxx11](char) const'
../daemon/face/multicast-ethernet-transport.cpp:81: error: undefined reference to 'ndn::ethernet::Address::isBroadcast() const'
../daemon/face/multicast-ethernet-transport.cpp:59: error: undefined reference to 'ndn::FaceUri::fromDev(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
../daemon/face/multicast-ethernet-transport.cpp:60: error: undefined reference to 'ndn::FaceUri::FaceUri(ndn::ethernet::Address const&)'
../daemon/face/multicast-ethernet-transport.cpp:81: error: undefined reference to 'ndn::ethernet::Address::isBroadcast() const'
../daemon/face/unicast-ethernet-transport.cpp:42: error: undefined reference to 'ndn::FaceUri::fromDev(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
../daemon/face/unicast-ethernet-transport.cpp:43: error: undefined reference to 'ndn::FaceUri::FaceUri(ndn::ethernet::Address const&)'
../daemon/face/unicast-ethernet-transport.cpp:43: error: undefined reference to 'ndn::FaceUri::FaceUri(ndn::ethernet::Address const&)'
../daemon/face/unix-stream-channel.cpp:45: error: undefined reference to 'ndn::FaceUri::FaceUri(boost::asio::local::basic_endpoint<boost::asio::local::stream_protocol> const&)'
../daemon/face/unix-stream-transport.cpp:42: error: undefined reference to 'ndn::FaceUri::FaceUri(boost::asio::local::basic_endpoint<boost::asio::local::stream_protocol> const&)'
../daemon/face/unix-stream-transport.cpp:43: error: undefined reference to 'ndn::FaceUri::fromFd(int)'
../daemon/face/unix-stream-transport.cpp:42: error: undefined reference to 'ndn::FaceUri::FaceUri(boost::asio::local::basic_endpoint<boost::asio::local::stream_protocol> const&)'
../daemon/face/unix-stream-transport.cpp:43: error: undefined reference to 'ndn::FaceUri::fromFd(int)'
../daemon/face/websocket-channel.cpp:40: error: undefined reference to 'ndn::FaceUri::FaceUri(boost::asio::ip::basic_endpoint<boost::asio::ip::tcp> const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
../daemon/face/websocket-transport.cpp:59: error: undefined reference to 'ndn::FaceUri::FaceUri(boost::asio::ip::basic_endpoint<boost::asio::ip::tcp> const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
../daemon/face/websocket-transport.cpp:60: error: undefined reference to 'ndn::FaceUri::FaceUri(boost::asio::ip::basic_endpoint<boost::asio::ip::tcp> const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
../daemon/face/websocket-transport.cpp:59: error: undefined reference to 'ndn::FaceUri::FaceUri(boost::asio::ip::basic_endpoint<boost::asio::ip::tcp> const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
../rib/auto-prefix-propagator.cpp:133: error: undefined reference to 'ndn::Name::at(long) const'
/usr/local/include/ndn-cxx/mgmt/nfd/controller.hpp:68: error: undefined reference to 'ndn::security::v2::getAcceptAllValidator()'
../rib/rib-manager.cpp:68: error: undefined reference to 'ndn::nfd::Controller::Controller(ndn::Face&, ndn::security::v2::KeyChain&, ndn::security::v2::Validator&)'
../rib/rib-manager.cpp:68: error: undefined reference to 'ndn::security::ValidatorConfig::ValidatorConfig(ndn::Face&, ndn::security::v2::ValidationPolicyCommandInterest::Options const&)'
../rib/rib-manager.cpp:68: error: undefined reference to 'ndn::security::ValidatorConfig::ValidatorConfig(ndn::Face&, ndn::security::v2::ValidationPolicyCommandInterest::Options const&)'
../rib/rib.cpp:115: error: undefined reference to 'ndn::util::scheduler::EventId::operator bool() const'
../rib/service.cpp:65: error: undefined reference to 'ndn::Face::Face(std::shared_ptr<ndn::Transport>, boost::asio::io_service&, ndn::security::v2::KeyChain&)'
../rib/service.cpp:66: error: undefined reference to 'ndn::mgmt:ispatcher:ispatcher(ndn::Face&, ndn::security::v2::KeyChain&, ndn::security::SigningInfo const&, unsigned long)'
../core/manager-base.cpp:63: error: undefined reference to 'ndn::Name::at(long) const'
../core/network-interface-predicate.cpp:68: error: undefined reference to 'ndn::ethernet::Address::fromString(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
../core/network-interface-predicate.cpp:68: error: undefined reference to 'ndn::ethernet::Address::isNull() const'
../core/scheduler.cpp:49: error: undefined reference to 'ndn::util::scheduler::Scheduler::scheduleEvent(boost::chrono::duration<long, boost::ratio<1l, 1000000000l> >, std::function<void ()> const&)'
collect2: error: ld returned 1 exit status

Waf: Leaving directory `/home/ltx/NDN/nfd/build'
Build failed
 -> task in 'bin/nfd' failed (exit status 1): 
        {task 139864471418960: cxxprogram main.cpp.5.o,channel.cpp.3.o,face-counters.cpp.3.o,face-system.cpp.3.o,face.cpp.3.o,generic-link-service.cpp.3.o,internal-face.cpp.3.o,internal-transport.cpp.3.o,link-service.cpp.3.o,lp-fragmenter.cpp.3.o,lp-reassembler.cpp.3.o,lp-reliability.cpp.3.o,multicast-udp-transport.cpp.3.o,null-face.cpp.3.o,protocol-factory.cpp.3.o,tcp-channel.cpp.3.o,tcp-factory.cpp.3.o,tcp-transport.cpp.3.o,transport.cpp.3.o,udp-channel.cpp.3.o,udp-factory.cpp.3.o,udp-protocol.cpp.3.o,unicast-udp-transport.cpp.3.o,access-strategy.cpp.3.o,algorithm.cpp.3.o,asf-measurements.cpp.3.o,asf-probing-module.cpp.3.o,asf-strategy.cpp.3.o,best-route-strategy.cpp.3.o,best-route-strategy2.cpp.3.o,client-control-strategy.cpp.3.o,face-table.cpp.3.o,forwarder.cpp.3.o,multicast-strategy.cpp.3.o,ncc-strategy.cpp.3.o,process-nack-traits.cpp.3.o,retx-suppression-exponential.cpp.3.o,retx-suppression-fixed.cpp.3.o,strategy.cpp.3.o,unsolicited-data-policy.cpp.3.o,command-authenticator.cpp.3.o,face-manager.cpp.3.o,fib-manager.cpp.3.o,forwarder-status-manager.cpp.3.o,general-config-section.cpp.3.o,nfd-manager-base.cpp.3.o,strategy-choice-manager.cpp.3.o,tables-config-section.cpp.3.o,nfd.cpp.3.o,cleanup.cpp.3.o,cs-entry-impl.cpp.3.o,cs-entry.cpp.3.o,cs-policy-lru.cpp.3.o,cs-policy-priority-fifo.cpp.3.o,cs-policy.cpp.3.o,cs.cpp.3.o,dead-nonce-list.cpp.3.o,fib-entry.cpp.3.o,fib-nexthop.cpp.3.o,fib.cpp.3.o,measurements-accessor.cpp.3.o,measurements-entry.cpp.3.o,measurements.cpp.3.o,name-tree-entry.cpp.3.o,name-tree-hashtable.cpp.3.o,name-tree-iterator.cpp.3.o,name-tree.cpp.3.o,network-region-table.cpp.3.o,pit-entry.cpp.3.o,pit-face-record.cpp.3.o,pit-in-record.cpp.3.o,pit-iterator.cpp.3.o,pit-out-record.cpp.3.o,pit.cpp.3.o,strategy-choice-entry.cpp.3.o,strategy-choice.cpp.3.o,strategy-info-host.cpp.3.o,ethernet-channel.cpp.3.o,ethernet-factory.cpp.3.o,ethernet-protocol.cpp.3.o,ethernet-transport.cpp.3.o,multicast-ethernet-transport.cpp.3.o,unicast-ethernet-transport.cpp.3.o,pcap-helper.cpp.3.o,unix-stream-channel.cpp.3.o,unix-stream-factory.cpp.3.o,unix-stream-transport.cpp.3.o,websocket-channel.cpp.3.o,websocket-factory.cpp.3.o,websocket-transport.cpp.3.o,auto-prefix-propagator.cpp.4.o,fib-update.cpp.4.o,fib-updater.cpp.4.o,propagated-entry.cpp.4.o,client-to-nlsr-readvertise-policy.cpp.4.o,nfd-rib-readvertise-destination.cpp.4.o,readvertise-destination.cpp.4.o,readvertise.cpp.4.o,readvertised-route.cpp.4.o,rib-entry.cpp.4.o,rib-manager.cpp.4.o,rib-update-batch.cpp.4.o,rib-update.cpp.4.o,rib.cpp.4.o,route.cpp.4.o,service.cpp.4.o,city-hash.cpp.2.o,config-file.cpp.2.o,global-io.cpp.2.o,manager-base.cpp.2.o,network-interface-predicate.cpp.2.o,network.cpp.2.o,privilege-helper.cpp.2.o,random.cpp.2.o,rtt-estimator.cpp.2.o,scheduler.cpp.2.o,logger-factory.cpp.2.o,logger.cpp.2.o -> nfd}
['/usr/bin/g++', '-fuse-ld=gold', '-Wl,-O1', '-pthread', '-pthread', '-pthread', 'daemon/main.cpp.5.o', 'daemon/face/channel.cpp.3.o', 'daemon/face/face-counters.cpp.3.o', 'daemon/face/face-system.cpp.3.o', 'daemon/face/face.cpp.3.o', 'daemon/face/generic-link-service.cpp.3.o', 'daemon/face/internal-face.cpp.3.o', 'daemon/face/internal-transport.cpp.3.o', 'daemon/face/link-service.cpp.3.o', 'daemon/face/lp-fragmenter.cpp.3.o', 'daemon/face/lp-reassembler.cpp.3.o', 'daemon/face/lp-reliability.cpp.3.o', 'daemon/face/multicast-udp-transport.cpp.3.o', 'daemon/face/null-face.cpp.3.o', 'daemon/face/protocol-factory.cpp.3.o', 'daemon/face/tcp-channel.cpp.3.o', 'daemon/face/tcp-factory.cpp.3.o', 'daemon/face/tcp-transport.cpp.3.o', 'daemon/face/transport.cpp.3.o', 'daemon/face/udp-channel.cpp.3.o', 'daemon/face/udp-factory.cpp.3.o', 'daemon/face/udp-protocol.cpp.3.o', 'daemon/face/unicast-udp-transport.cpp.3.o', 'daemon/fw/access-strategy.cpp.3.o', 'daemon/fw/algorithm.cpp.3.o', 'daemon/fw/asf-measurements.cpp.3.o', 'daemon/fw/asf-probing-module.cpp.3.o', 'daemon/fw/asf-strategy.cpp.3.o', 'daemon/fw/best-route-strategy.cpp.3.o', 'daemon/fw/best-route-strategy2.cpp.3.o', 'daemon/fw/client-control-strategy.cpp.3.o', 'daemon/fw/face-table.cpp.3.o', 'daemon/fw/forwarder.cpp.3.o', 'daemon/fw/multicast-strategy.cpp.3.o', 'daemon/fw/ncc-strategy.cpp.3.o', 'daemon/fw/process-nack-traits.cpp.3.o', 'daemon/fw/retx-suppression-exponential.cpp.3.o', 'daemon/fw/retx-suppression-fixed.cpp.3.o', 'daemon/fw/strategy.cpp.3.o', 'daemon/fw/unsolicited-data-policy.cpp.3.o', 'daemon/mgmt/command-authenticator.cpp.3.o', 'daemon/mgmt/face-manager.cpp.3.o', 'daemon/mgmt/fib-manager.cpp.3.o', 'daemon/mgmt/forwarder-status-manager.cpp.3.o', 'daemon/mgmt/general-config-section.cpp.3.o', 'daemon/mgmt/nfd-manager-base.cpp.3.o', 'daemon/mgmt/strategy-choice-manager.cpp.3.o', 'daemon/mgmt/tables-config-section.cpp.3.o', 'daemon/nfd.cpp.3.o', 'daemon/table/cleanup.cpp.3.o', 'daemon/table/cs-entry-impl.cpp.3.o', 'daemon/table/cs-entry.cpp.3.o', 'daemon/table/cs-policy-lru.cpp.3.o', 'daemon/table/cs-policy-priority-fifo.cpp.3.o', 'daemon/table/cs-policy.cpp.3.o', 'daemon/table/cs.cpp.3.o', 'daemon/table/dead-nonce-list.cpp.3.o', 'daemon/table/fib-entry.cpp.3.o', 'daemon/table/fib-nexthop.cpp.3.o', 'daemon/table/fib.cpp.3.o', 'daemon/table/measurements-accessor.cpp.3.o', 'daemon/table/measurements-entry.cpp.3.o', 'daemon/table/measurements.cpp.3.o', 'daemon/table/name-tree-entry.cpp.3.o', 'daemon/table/name-tree-hashtable.cpp.3.o', 'daemon/table/name-tree-iterator.cpp.3.o', 'daemon/table/name-tree.cpp.3.o', 'daemon/table/network-region-table.cpp.3.o', 'daemon/table/pit-entry.cpp.3.o', 'daemon/table/pit-face-record.cpp.3.o', 'daemon/table/pit-in-record.cpp.3.o', 'daemon/table/pit-iterator.cpp.3.o', 'daemon/table/pit-out-record.cpp.3.o', 'daemon/table/pit.cpp.3.o', 'daemon/table/strategy-choice-entry.cpp.3.o', 'daemon/table/strategy-choice.cpp.3.o', 'daemon/table/strategy-info-host.cpp.3.o', 'daemon/face/ethernet-channel.cpp.3.o', 'daemon/face/ethernet-factory.cpp.3.o', 'daemon/face/ethernet-protocol.cpp.3.o', 'daemon/face/ethernet-transport.cpp.3.o', 'daemon/face/multicast-ethernet-transport.cpp.3.o', 'daemon/face/unicast-ethernet-transport.cpp.3.o', 'daemon/face/pcap-helper.cpp.3.o', 'daemon/face/unix-stream-channel.cpp.3.o', 'daemon/face/unix-stream-factory.cpp.3.o', 'daemon/face/unix-stream-transport.cpp.3.o', 'daemon/face/websocket-channel.cpp.3.o', 'daemon/face/websocket-factory.cpp.3.o', 'daemon/face/websocket-transport.cpp.3.o', 'rib/auto-prefix-propagator.cpp.4.o', 'rib/fib-update.cpp.4.o', 'rib/fib-updater.cpp.4.o', 'rib/propagated-entry.cpp.4.o', 'rib/readvertise/client-to-nlsr-readvertise-policy.cpp.4.o', 'rib/readvertise/nfd-rib-readvertise-destination.cpp.4.o', 'rib/readvertise/readvertise-destination.cpp.4.o', 'rib/readvertise/readvertise.cpp.4.o', 'rib/readvertise/readvertised-route.cpp.4.o', 'rib/rib-entry.cpp.4.o', 'rib/rib-manager.cpp.4.o', 'rib/rib-update-batch.cpp.4.o', 'rib/rib-update.cpp.4.o', 'rib/rib.cpp.4.o', 'rib/route.cpp.4.o', 'rib/service.cpp.4.o', 'core/city-hash.cpp.2.o', 'core/config-file.cpp.2.o', 'core/global-io.cpp.2.o', 'core/manager-base.cpp.2.o', 'core/network-interface-predicate.cpp.2.o', 'core/network.cpp.2.o', 'core/privilege-helper.cpp.2.o', 'core/random.cpp.2.o', 'core/rtt-estimator.cpp.2.o', 'core/scheduler.cpp.2.o', 'core/logger-factory.cpp.2.o', 'core/logger.cpp.2.o', '-o', '/home/ltx/NDN/nfd/build/bin/nfd', '-Wl,-Bstatic', '-L/usr/lib/x86_64-linux-gnu', '-Wl,-Bdynamic', '-L/usr/local/lib', '-L/usr/lib/x86_64-linux-gnu', '-lndn-cxx', '-lboost_system', '-lboost_filesystem', '-lboost_date_time', '-lboost_iostreams', '-lboost_regex', '-lboost_program_options', '-lboost_chrono', '-lboost_thread', '-lboost_log', '-lboost_log_setup', '-lssl', '-lcrypto', '-lsqlite3', '-lrt', '-lpthread', '-lboost_system', '-lboost_chrono', '-lboost_program_options', '-lboost_thread', '-lboost_log', '-lboost_log_setup', '-lrt', '-lpcap']


I was wondering if any of the processes in the middle had any problems which could have caused this result. Hope you can provide some suggestions.

Thank you,
Tianxiang

----- 原始邮件 -----
发件人: "Davide Pesavento" <davide.pesavento at lip6.fr>
收件人: "Tianxiang Li" <tianxiang at cs.ucla.edu>
抄送: "Eric Newberry" <enewberry at email.arizona.edu>, nfd-dev at lists.cs.ucla.edu
发送时间: 星期三, 2017年 10 月 18日 下午 4:42:22
主题: Re: [Nfd-dev] Error compiling NFD 0.6.0 on Ubuntu 16.04.3

Make sure older copies of ndn-cxx (library and headers) are completely
removed from the system.
>From the error messages, it looks like you're compiling against the
new headers, but then it tries to link nfd against an old libndn-cxx,
hence the missing symbols.

On Wed, Oct 18, 2017 at 7:32 PM, Tianxiang Li <tianxiang at cs.ucla.edu> wrote:
> Hi Eric,
>
> No,I directly released version of NFD 0.6.0. I also tried the "./waf distclean" and reconfiguring NFD, and the same error message appeared.
>
> Thanks,
> Tianxiang
>
> ----- 原始邮件 -----
> 发件人: "Eric Newberry" <enewberry at email.arizona.edu>
> 收件人: "Tianxiang Li" <tianxiang at cs.ucla.edu>
> 抄送: nfd-dev at lists.cs.ucla.edu
> 发送时间: 星期三, 2017年 10 月 18日 下午 4:22:28
> 主题: Re: [Nfd-dev] Error compiling NFD 0.6.0 on Ubuntu 16.04.3
>
> Were you using the same copy of the NFD repository before 0.6.0 was
> released? If so, you may need to run "./waf distclean" and reconfigure
> and rebuild NFD from scratch after installing a new version of ndn-cxx.
>
> Eric
>
>
> On 10/18/2017 04:20 PM, Tianxiang Li wrote:
>> Hi Eric,
>>
>> Yes, I'm using version 0.6.0 of ndn-cxx.
>>
>> Thanks,
>> Tianxiang
>>
>> ----- 原始邮件 -----
>> 发件人: "Eric Newberry" <enewberry at email.arizona.edu>
>> 收件人: "Tianxiang Li" <tianxiang at cs.ucla.edu>
>> 抄送: nfd-dev at lists.cs.ucla.edu
>> 发送时间: 星期三, 2017年 10 月 18日 下午 4:14:05
>> 主题: Re: [Nfd-dev] Error compiling NFD 0.6.0 on Ubuntu 16.04.3
>>
>> No, I thought it may have been related to this command not being run,
>> but it looks that couldn't be the issue. Just to confirm, you're linking
>> it against version 0.6.0 of ndn-cxx, right?
>>
>>
>> On 10/18/2017 04:11 PM, Tianxiang Li wrote:
>>> Hi Eric,
>>>
>>> Thank you for the reply, yes I did run sudo ldconfig and added the installation path to /etc/ld.so.conf.
>>> Is this error message related to this operation?
>>>
>>> Thank you,
>>> Tianxiang
>>>
>>> ----- Original Message -----
>>> From: "Eric Newberry" <enewberry at email.arizona.edu>
>>> To: nfd-dev at lists.cs.ucla.edu
>>> Sent: Wednesday, October 18, 2017 4:04:58 PM
>>> Subject: Re: [Nfd-dev] Error compiling NFD 0.6.0 on Ubuntu 16.04.3
>>>
>>> Tianxiang,
>>>
>>> Did you run "sudo ldconfig" after compiling and installing ndn-cxx?
>>>
>>> Eric
>>>
>>>
>>> On 10/18/2017 04:03 PM, Tianxiang Li wrote:
>>>> Hi NFD team,
>>>>
>>>> When I compiled NFD 0.6.0 on Ubuntu 16.04.3, the following error message appeared. Could you provide some guidance on how to fix this?
>>>>
>>>> [140/157] Linking build/bin/nfd
>>>> ../daemon/face/face.cpp:49: error: undefined reference to 'ndn::operator<<(std::ostream&, ndn::FaceUri const&)'
>>>> ../daemon/face/face.cpp:50: error: undefined reference to 'ndn::operator<<(std::ostream&, ndn::FaceUri const&)'
>>>> /usr/local/include/ndn-cxx/lp/field-decl.hpp:89: error: undefined reference to 'unsigned long ndn::encoding::prependNonNegativeIntegerBlock<(ndn::encoding::Tag)0>(ndn::encoding::EncodingImpl<(ndn::encoding::Tag)0>&, unsigned int, unsigned long)'
>>>> /usr/local/include/ndn-cxx/lp/field-decl.hpp:89: error: undefined reference to 'unsigned long ndn::encoding::prependNonNegativeIntegerBlock<(ndn::encoding::Tag)1>(ndn::encoding::EncodingImpl<(ndn::encoding::Tag)1>&, unsigned int, unsigned long)'
>>>> /usr/local/include/ndn-cxx/lp/field-decl.hpp:89: error: undefined reference to 'unsigned long ndn::encoding::prependNonNegativeIntegerBlock<(ndn::encoding::Tag)0>(ndn::encoding::EncodingImpl<(ndn::encoding::Tag)0>&, unsigned int, unsigned long)'
>>>> /usr/local/include/ndn-cxx/lp/field-decl.hpp:89: error: undefined reference to 'unsigned long ndn::encoding::prependNonNegativeIntegerBlock<(ndn::encoding::Tag)1>(ndn::encoding::EncodingImpl<(ndn::encoding::Tag)1>&, unsigned int, unsigned long)'
>>>> /usr/local/include/ndn-cxx/lp/field-decl.hpp:89: error: undefined reference to 'unsigned long ndn::encoding::prependNonNegativeIntegerBlock<(ndn::encoding::Tag)0>(ndn::encoding::EncodingImpl<(ndn::encoding::Tag)0>&, unsigned int, unsigned long)'
>>>> /usr/local/include/ndn-cxx/lp/field-decl.hpp:89: error: undefined reference to 'unsigned long ndn::encoding::prependNonNegativeIntegerBlock<(ndn::encoding::Tag)1>(ndn::encoding::EncodingImpl<(ndn::encoding::Tag)1>&, unsigned int, unsigned long)'
>>>> /usr/local/include/ndn-cxx/lp/field-decl.hpp:79: error: undefined reference to 'unsigned long ndn::lp::NackHeader::wireEncode<(ndn::encoding::Tag)0>(ndn::encoding::EncodingImpl<(ndn::encoding::Tag)0>&) const'
>>>> /usr/local/include/ndn-cxx/lp/field-decl.hpp:79: error: undefined reference to 'unsigned long ndn::lp::NackHeader::wireEncode<(ndn::encoding::Tag)1>(ndn::encoding::EncodingImpl<(ndn::encoding::Tag)1>&) const'
>>>> /usr/local/include/ndn-cxx/util/backports.hpp:75: error: undefined reference to 'ndn::FaceUri::FaceUri(char const*)'
>>>> /usr/local/include/ndn-cxx/util/backports.hpp:75: error: undefined reference to 'ndn::FaceUri::FaceUri(char const*)'
>>>> /usr/include/c++/5/ext/new_allocator.h:120: error: undefined reference to 'ndn::Face::Face(std::shared_ptr<ndn::Transport>, boost::asio::io_service&, ndn::security::v2::KeyChain&)'
>>>> ../daemon/face/link-service.cpp:125: error: undefined reference to 'ndn::operator<<(std::ostream&, ndn::FaceUri const&)'
>>>> ../daemon/face/link-service.cpp:126: error: undefined reference to 'ndn::operator<<(std::ostream&, ndn::FaceUri const&)'
>>>> /usr/local/include/ndn-cxx/lp/field-decl.hpp:89: error: undefined reference to 'unsigned long ndn::encoding::prependNonNegativeIntegerBlock<(ndn::encoding::Tag)0>(ndn::encoding::EncodingImpl<(ndn::encoding::Tag)0>&, unsigned int, unsigned long)'
>>>> /usr/local/include/ndn-cxx/lp/field-decl.hpp:89: error: undefined reference to 'unsigned long ndn::encoding::prependNonNegativeIntegerBlock<(ndn::encoding::Tag)1>(ndn::encoding::EncodingImpl<(ndn::encoding::Tag)1>&, unsigned int, unsigned long)'
>>>> ../daemon/face/multicast-udp-transport.cpp:44: error: undefined reference to 'ndn::FaceUri::FaceUri(boost::asio::ip::basic_endpoint<boost::asio::ip::udp> const&)'
>>>> ../daemon/face/multicast-udp-transport.cpp:45: error: undefined reference to 'ndn::FaceUri::FaceUri(boost::asio::ip::basic_endpoint<boost::asio::ip::udp> const&)'
>>>> ../daemon/face/multicast-udp-transport.cpp:44: error: undefined reference to 'ndn::FaceUri::FaceUri(boost::asio::ip::basic_endpoint<boost::asio::ip::udp> const&)'
>>>> ../daemon/face/multicast-udp-transport.cpp:45: error: undefined reference to 'ndn::FaceUri::FaceUri(boost::asio::ip::basic_endpoint<boost::asio::ip::udp> const&)'
>>>> ../daemon/face/channel.hpp:52: error: undefined reference to 'ndn::FaceUri::FaceUri()'
>>>> ../daemon/face/tcp-channel.cpp:43: error: undefined reference to 'ndn::FaceUri::FaceUri(boost::asio::ip::basic_endpoint<boost::asio::ip::tcp> const&)'
>>>> ../daemon/face/tcp-factory.cpp:148: error: undefined reference to 'ndn::ip::addressFromString(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
>>>> ../daemon/face/tcp-transport.cpp:141: error: undefined reference to 'ndn::FaceUri::FaceUri(boost::asio::ip::basic_endpoint<boost::asio::ip::tcp> const&)'
>>>> ../daemon/face/tcp-transport.cpp:42: error: undefined reference to 'ndn::FaceUri::FaceUri(boost::asio::ip::basic_endpoint<boost::asio::ip::tcp> const&)'
>>>> ../daemon/face/tcp-transport.cpp:43: error: undefined reference to 'ndn::FaceUri::FaceUri(boost::asio::ip::basic_endpoint<boost::asio::ip::tcp> const&)'
>>>> ../daemon/face/transport.cpp:67: error: undefined reference to 'ndn::FaceUri::FaceUri()'
>>>> ../daemon/face/transport.cpp:67: error: undefined reference to 'ndn::FaceUri::FaceUri()'
>>>> ../daemon/face/transport.cpp:67: error: undefined reference to 'ndn::FaceUri::FaceUri()'
>>>> ../daemon/face/udp-factory.cpp:301: error: undefined reference to 'ndn::FaceUri::operator==(ndn::FaceUri const&) const'
>>>> ../daemon/face/udp-factory.cpp:232: error: undefined reference to 'ndn::ip::addressFromString(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
>>>> ../daemon/face/udp-factory.cpp:383: error: undefined reference to 'ndn::ip::addressFromString(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
>>>> ../daemon/face/udp-factory.cpp:385: error: undefined reference to 'ndn::ip::addressFromString(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
>>>> ../daemon/face/udp-factory.cpp:454: error: undefined reference to 'ndn::net::NetworkMonitor::listNetworkInterfaces() const'
>>>> ../daemon/fw/forwarder.cpp:107: error: undefined reference to 'ndn::DelegationList::DelegationList()'
>>>> ../daemon/fw/forwarder.cpp:107: error: undefined reference to 'ndn::Interest::setForwardingHint(ndn::DelegationList const&)'
>>>> ../daemon/fw/process-nack-traits.cpp:49: error: undefined reference to 'ndn::lp::isLessSevere(ndn::lp::NackReason, ndn::lp::NackReason)'
>>>> ../daemon/fw/strategy.cpp:138: error: undefined reference to 'ndn::Name::at(long) const'
>>>> /usr/local/include/ndn-cxx/util/backports.hpp:75: error: undefined reference to 'ndn::security::v2::ValidationPolicyCommandInterest::ValidationPolicyCommandInterest(std::unique_ptr<ndn::security::v2::ValidationPolicy, std::default_delete<ndn::security::v2::ValidationPolicy> >, ndn::security::v2::ValidationPolicyCommandInterest::Options const&)'
>>>> ../daemon/mgmt/command-authenticator.cpp:75: error: undefined reference to 'ndn::security::v2::getKeyLocatorName(ndn::Interest const&, ndn::security::v2::ValidationState&)'
>>>> ../daemon/mgmt/command-authenticator.cpp:86: error: undefined reference to 'ndn::Interest::Interest(ndn::Name const&, boost::chrono::duration<long, boost::ratio<1l, 1000l> >)'
>>>> ../daemon/mgmt/face-manager.cpp:358: error: undefined reference to 'ndn::FaceUri::toString[abi:cxx11]() const'
>>>> ../daemon/mgmt/face-manager.cpp:363: error: undefined reference to 'ndn::FaceUri::toString[abi:cxx11]() const'
>>>> ../daemon/mgmt/face-manager.cpp:310: error: undefined reference to 'ndn::FaceUri::toString[abi:cxx11]() const'
>>>> ../daemon/mgmt/face-manager.cpp:82: error: undefined reference to 'ndn::FaceUri::parse(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
>>>> ../daemon/mgmt/face-manager.cpp:88: error: undefined reference to 'ndn::FaceUri::isCanonical() const'
>>>> ../daemon/mgmt/face-manager.cpp:89: error: undefined reference to 'ndn::FaceUri::toString[abi:cxx11]() const'
>>>> ../daemon/mgmt/face-manager.cpp:98: error: undefined reference to 'ndn::FaceUri::parse(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
>>>> ../daemon/mgmt/face-manager.cpp:104: error: undefined reference to 'ndn::FaceUri::isCanonical() const'
>>>> /usr/include/c++/5/ext/new_allocator.h:120: error: undefined reference to 'ndn::net::NetworkMonitor::NetworkMonitor(boost::asio::io_service&)'
>>>> ../daemon/nfd.cpp:136: error: undefined reference to 'ndn::mgmt::Dispatcher::Dispatcher(ndn::Face&, ndn::security::v2::KeyChain&, ndn::security::SigningInfo const&, unsigned long)'
>>>> ../daemon/nfd.cpp:80: error: undefined reference to 'ndn::FaceUri::FaceUri(char const*)'
>>>> ../daemon/nfd.cpp:81: error: undefined reference to 'ndn::FaceUri::FaceUri(char const*)'
>>>> ../daemon/face/ethernet-channel.cpp:228: error: undefined reference to 'ndn::ethernet::Address::toString[abi:cxx11](char) const'
>>>> ../daemon/face/ethernet-channel.cpp:230: error: undefined reference to 'ndn::ethernet::Address::toString[abi:cxx11](char) const'
>>>> ../daemon/face/ethernet-channel.cpp:51: error: undefined reference to 'ndn::FaceUri::fromDev(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
>>>> /usr/include/boost/log/utility/formatting_ostream.hpp:710: error: undefined reference to 'ndn::ethernet::operator<<(std::ostream&, ndn::ethernet::Address const&)'
>>>> /usr/include/boost/log/utility/formatting_ostream.hpp:710: error: undefined reference to 'ndn::ethernet::operator<<(std::ostream&, ndn::ethernet::Address const&)'
>>>> /usr/include/boost/log/utility/formatting_ostream.hpp:710: error: undefined reference to 'ndn::ethernet::operator<<(std::ostream&, ndn::ethernet::Address const&)'
>>>> /usr/include/boost/log/utility/formatting_ostream.hpp:710: error: undefined reference to 'ndn::ethernet::operator<<(std::ostream&, ndn::ethernet::Address const&)'
>>>> ../daemon/face/ethernet-channel.cpp:141: error: undefined reference to 'ndn::ethernet::Address::Address(unsigned char const*)'
>>>> ../daemon/face/ethernet-factory.hpp:116: error: undefined reference to 'ndn::ethernet::getDefaultMulticastAddress()'
>>>> ../daemon/face/ethernet-factory.cpp:187: error: undefined reference to 'ndn::ethernet::Address::fromString(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
>>>> ../daemon/face/ethernet-factory.cpp:190: error: undefined reference to 'ndn::ethernet::Address::isMulticast() const'
>>>> ../daemon/face/ethernet-factory.cpp:278: error: undefined reference to 'ndn::ethernet::Address::isNull() const'
>>>> ../daemon/face/ethernet-factory.cpp:317: error: undefined reference to 'ndn::ethernet::Address::isNull() const'
>>>> ../daemon/face/ethernet-factory.cpp:359: error: undefined reference to 'ndn::net::NetworkMonitor::listNetworkInterfaces() const'
>>>> ../daemon/face/ethernet-factory.hpp:116: error: undefined reference to 'ndn::ethernet::getDefaultMulticastAddress()'
>>>> ../daemon/face/ethernet-factory.cpp:97: error: undefined reference to 'ndn::ethernet::Address::fromString(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
>>>> ../daemon/face/ethernet-factory.cpp:98: error: undefined reference to 'ndn::ethernet::Address::isNull() const'
>>>> ../daemon/face/ethernet-factory.cpp:102: error: undefined reference to 'ndn::ethernet::Address::isMulticast() const'
>>>> ../daemon/face/ethernet-transport.cpp:196: error: undefined reference to 'ndn::ethernet::Address::isMulticast() const'
>>>> ../daemon/face/ethernet-transport.cpp:155: error: undefined reference to 'ndn::ethernet::Address::isMulticast() const'
>>>> ../daemon/face/ethernet-transport.cpp:160: error: undefined reference to 'ndn::ethernet::Address::Address(unsigned char const*)'
>>>> ../daemon/face/multicast-ethernet-transport.cpp:59: error: undefined reference to 'ndn::FaceUri::fromDev(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
>>>> ../daemon/face/multicast-ethernet-transport.cpp:60: error: undefined reference to 'ndn::FaceUri::FaceUri(ndn::ethernet::Address const&)'
>>>> ../daemon/face/multicast-ethernet-transport.cpp:77: error: undefined reference to 'ndn::ethernet::Address::toString[abi:cxx11](char) const'
>>>> ../daemon/face/multicast-ethernet-transport.cpp:76: error: undefined reference to 'ndn::ethernet::Address::toString[abi:cxx11](char) const'
>>>> ../daemon/face/multicast-ethernet-transport.cpp:81: error: undefined reference to 'ndn::ethernet::Address::isBroadcast() const'
>>>> ../daemon/face/multicast-ethernet-transport.cpp:59: error: undefined reference to 'ndn::FaceUri::fromDev(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
>>>> ../daemon/face/multicast-ethernet-transport.cpp:60: error: undefined reference to 'ndn::FaceUri::FaceUri(ndn::ethernet::Address const&)'
>>>> ../daemon/face/multicast-ethernet-transport.cpp:81: error: undefined reference to 'ndn::ethernet::Address::isBroadcast() const'
>>>> ../daemon/face/unicast-ethernet-transport.cpp:42: error: undefined reference to 'ndn::FaceUri::fromDev(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
>>>> ../daemon/face/unicast-ethernet-transport.cpp:43: error: undefined reference to 'ndn::FaceUri::FaceUri(ndn::ethernet::Address const&)'
>>>> ../daemon/face/unicast-ethernet-transport.cpp:43: error: undefined reference to 'ndn::FaceUri::FaceUri(ndn::ethernet::Address const&)'
>>>> ../daemon/face/unix-stream-channel.cpp:45: error: undefined reference to 'ndn::FaceUri::FaceUri(boost::asio::local::basic_endpoint<boost::asio::local::stream_protocol> const&)'
>>>> ../daemon/face/unix-stream-transport.cpp:42: error: undefined reference to 'ndn::FaceUri::FaceUri(boost::asio::local::basic_endpoint<boost::asio::local::stream_protocol> const&)'
>>>> ../daemon/face/unix-stream-transport.cpp:43: error: undefined reference to 'ndn::FaceUri::fromFd(int)'
>>>> ../daemon/face/unix-stream-transport.cpp:42: error: undefined reference to 'ndn::FaceUri::FaceUri(boost::asio::local::basic_endpoint<boost::asio::local::stream_protocol> const&)'
>>>> ../daemon/face/unix-stream-transport.cpp:43: error: undefined reference to 'ndn::FaceUri::fromFd(int)'
>>>> ../daemon/face/websocket-channel.cpp:40: error: undefined reference to 'ndn::FaceUri::FaceUri(boost::asio::ip::basic_endpoint<boost::asio::ip::tcp> const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
>>>> ../daemon/face/websocket-transport.cpp:59: error: undefined reference to 'ndn::FaceUri::FaceUri(boost::asio::ip::basic_endpoint<boost::asio::ip::tcp> const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
>>>> ../daemon/face/websocket-transport.cpp:60: error: undefined reference to 'ndn::FaceUri::FaceUri(boost::asio::ip::basic_endpoint<boost::asio::ip::tcp> const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
>>>> ../daemon/face/websocket-transport.cpp:59: error: undefined reference to 'ndn::FaceUri::FaceUri(boost::asio::ip::basic_endpoint<boost::asio::ip::tcp> const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
>>>> ../rib/auto-prefix-propagator.cpp:133: error: undefined reference to 'ndn::Name::at(long) const'
>>>> /usr/local/include/ndn-cxx/mgmt/nfd/controller.hpp:68: error: undefined reference to 'ndn::security::v2::getAcceptAllValidator()'
>>>> ../rib/rib-manager.cpp:68: error: undefined reference to 'ndn::nfd::Controller::Controller(ndn::Face&, ndn::security::v2::KeyChain&, ndn::security::v2::Validator&)'
>>>> ../rib/rib-manager.cpp:68: error: undefined reference to 'ndn::security::ValidatorConfig::ValidatorConfig(ndn::Face&, ndn::security::v2::ValidationPolicyCommandInterest::Options const&)'
>>>> ../rib/rib-manager.cpp:68: error: undefined reference to 'ndn::security::ValidatorConfig::ValidatorConfig(ndn::Face&, ndn::security::v2::ValidationPolicyCommandInterest::Options const&)'
>>>> ../rib/rib.cpp:115: error: undefined reference to 'ndn::util::scheduler::EventId::operator bool() const'
>>>> ../rib/service.cpp:65: error: undefined reference to 'ndn::Face::Face(std::shared_ptr<ndn::Transport>, boost::asio::io_service&, ndn::security::v2::KeyChain&)'
>>>> ../rib/service.cpp:66: error: undefined reference to 'ndn::mgmt::Dispatcher::Dispatcher(ndn::Face&, ndn::security::v2::KeyChain&, ndn::security::SigningInfo const&, unsigned long)'
>>>> ../core/manager-base.cpp:63: error: undefined reference to 'ndn::Name::at(long) const'
>>>> ../core/network-interface-predicate.cpp:68: error: undefined reference to 'ndn::ethernet::Address::fromString(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
>>>> ../core/network-interface-predicate.cpp:68: error: undefined reference to 'ndn::ethernet::Address::isNull() const'
>>>> ../core/scheduler.cpp:49: error: undefined reference to 'ndn::util::scheduler::Scheduler::scheduleEvent(boost::chrono::duration<long, boost::ratio<1l, 1000000000l> >, std::function<void ()> const&)'
>>>> collect2: error: ld returned 1 exit status
>>>>
>>>> Waf: Leaving directory `/home/ltx/NDN/nfd/build'
>>>> Build failed
>>>>     -> task in 'bin/nfd' failed (exit status 1):
>>>>     {task 139864471418960: cxxprogram main.cpp.5.o,channel.cpp.3.o,face-counters.cpp.3.o,face-system.cpp.3.o,face.cpp.3.o,generic-link-service.cpp.3.o,internal-face.cpp.3.o,internal-transport.cpp.3.o,link-service.cpp.3.o,lp-fragmenter.cpp.3.o,lp-reassembler.cpp.3.o,lp-reliability.cpp.3.o,multicast-udp-transport.cpp.3.o,null-face.cpp.3.o,protocol-factory.cpp.3.o,tcp-channel.cpp.3.o,tcp-factory.cpp.3.o,tcp-transport.cpp.3.o,transport.cpp.3.o,udp-channel.cpp.3.o,udp-factory.cpp.3.o,udp-protocol.cpp.3.o,unicast-udp-transport.cpp.3.o,access-strategy.cpp.3.o,algorithm.cpp.3.o,asf-measurements.cpp.3.o,asf-probing-module.cpp.3.o,asf-strategy.cpp.3.o,best-route-strategy.cpp.3.o,best-route-strategy2.cpp.3.o,client-control-strategy.cpp.3.o,face-table.cpp.3.o,forwarder.cpp.3.o,multicast-strategy.cpp.3.o,ncc-strategy.cpp.3.o,process-nack-traits.cpp.3.o,retx-suppression-exponential.cpp.3.o,retx-suppression-fixed.cpp.3.o,strategy.cpp.3.o,unsolicited-data-policy.cpp.3.o,command-authenticator.cp
>>>>     p.3.o,fa
>>>>     ce-manager.cpp.3.o,fib-manager.cpp.3.o,forwarder-status-manager.cpp.3.o,general-config-section.cpp.3.o,nfd-manager-base.cpp.3.o,strategy-choice-manager.cpp.3.o,tables-config-section.cpp.3.o,nfd.cpp.3.o,cleanup.cpp.3.o,cs-entry-impl.cpp.3.o,cs-entry.cpp.3.o,cs-policy-lru.cpp.3.o,cs-policy-priority-fifo.cpp.3.o,cs-policy.cpp.3.o,cs.cpp.3.o,dead-nonce-list.cpp.3.o,fib-entry.cpp.3.o,fib-nexthop.cpp.3.o,fib.cpp.3.o,measurements-accessor.cpp.3.o,measurements-entry.cpp.3.o,measurements.cpp.3.o,name-tree-entry.cpp.3.o,name-tree-hashtable.cpp.3.o,name-tree-iterator.cpp.3.o,name-tree.cpp.3.o,network-region-table.cpp.3.o,pit-entry.cpp.3.o,pit-face-record.cpp.3.o,pit-in-record.cpp.3.o,pit-iterator.cpp.3.o,pit-out-record.cpp.3.o,pit.cpp.3.o,strategy-choice-entry.cpp.3.o,strategy-choice.cpp.3.o,strategy-info-host.cpp.3.o,ethernet-channel.cpp.3.o,ethernet-factory.cpp.3.o,ethernet-protocol.cpp.3.o,ethernet-transport.cpp.3.o,multicast-ethernet-transport.cpp.3.o,unicast-ethernet-transport.cpp
>>>>     .3.o,pca
>>>>     p-helper.cpp.3.o,unix-stream-channel.cpp.3.o,unix-stream-factory.cpp.3.o,unix-stream-transport.cpp.3.o,websocket-channel.cpp.3.o,websocket-factory.cpp.3.o,websocket-transport.cpp.3.o,auto-prefix-propagator.cpp.4.o,fib-update.cpp.4.o,fib-updater.cpp.4.o,propagated-entry.cpp.4.o,client-to-nlsr-readvertise-policy.cpp.4.o,nfd-rib-readvertise-destination.cpp.4.o,readvertise-destination.cpp.4.o,readvertise.cpp.4.o,readvertised-route.cpp.4.o,rib-entry.cpp.4.o,rib-manager.cpp.4.o,rib-update-batch.cpp.4.o,rib-update.cpp.4.o,rib.cpp.4.o,route.cpp.4.o,service.cpp.4.o,city-hash.cpp.2.o,config-file.cpp.2.o,global-io.cpp.2.o,manager-base.cpp.2.o,network-interface-predicate.cpp.2.o,network.cpp.2.o,privilege-helper.cpp.2.o,random.cpp.2.o,rtt-estimator.cpp.2.o,scheduler.cpp.2.o,logger-factory.cpp.2.o,logger.cpp.2.o -> nfd}
>>>> ['/usr/bin/g++', '-fuse-ld=gold', '-Wl,-O1', '-pthread', '-pthread', '-pthread', 'daemon/main.cpp.5.o', 'daemon/face/channel.cpp.3.o', 'daemon/face/face-counters.cpp.3.o', 'daemon/face/face-system.cpp.3.o', 'daemon/face/face.cpp.3.o', 'daemon/face/generic-link-service.cpp.3.o', 'daemon/face/internal-face.cpp.3.o', 'daemon/face/internal-transport.cpp.3.o', 'daemon/face/link-service.cpp.3.o', 'daemon/face/lp-fragmenter.cpp.3.o', 'daemon/face/lp-reassembler.cpp.3.o', 'daemon/face/lp-reliability.cpp.3.o', 'daemon/face/multicast-udp-transport.cpp.3.o', 'daemon/face/null-face.cpp.3.o', 'daemon/face/protocol-factory.cpp.3.o', 'daemon/face/tcp-channel.cpp.3.o', 'daemon/face/tcp-factory.cpp.3.o', 'daemon/face/tcp-transport.cpp.3.o', 'daemon/face/transport.cpp.3.o', 'daemon/face/udp-channel.cpp.3.o', 'daemon/face/udp-factory.cpp.3.o', 'daemon/face/udp-protocol.cpp.3.o', 'daemon/face/unicast-udp-transport.cpp.3.o', 'daemon/fw/access-strategy.cpp.3.o', 'daemon/fw/algorithm.cpp.3.o', 'dae
>>>>     mon/fw/a
>>>>     sf-measurements.cpp.3.o', 'daemon/fw/asf-probing-module.cpp.3.o', 'daemon/fw/asf-strategy.cpp.3.o', 'daemon/fw/best-route-strategy.cpp.3.o', 'daemon/fw/best-route-strategy2.cpp.3.o', 'daemon/fw/client-control-strategy.cpp.3.o', 'daemon/fw/face-table.cpp.3.o', 'daemon/fw/forwarder.cpp.3.o', 'daemon/fw/multicast-strategy.cpp.3.o', 'daemon/fw/ncc-strategy.cpp.3.o', 'daemon/fw/process-nack-traits.cpp.3.o', 'daemon/fw/retx-suppression-exponential.cpp.3.o', 'daemon/fw/retx-suppression-fixed.cpp.3.o', 'daemon/fw/strategy.cpp.3.o', 'daemon/fw/unsolicited-data-policy.cpp.3.o', 'daemon/mgmt/command-authenticator.cpp.3.o', 'daemon/mgmt/face-manager.cpp.3.o', 'daemon/mgmt/fib-manager.cpp.3.o', 'daemon/mgmt/forwarder-status-manager.cpp.3.o', 'daemon/mgmt/general-config-section.cpp.3.o', 'daemon/mgmt/nfd-manager-base.cpp.3.o', 'daemon/mgmt/strategy-choice-manager.cpp.3.o', 'daemon/mgmt/tables-config-section.cpp.3.o', 'daemon/nfd.cpp.3.o', 'daemon/table/cleanup.cpp.3.o', 'daemon/table/cs-e
>>>>     ntry-imp
>>>>     l.cpp.3.o', 'daemon/table/cs-entry.cpp.3.o', 'daemon/table/cs-policy-lru.cpp.3.o', 'daemon/table/cs-policy-priority-fifo.cpp.3.o', 'daemon/table/cs-policy.cpp.3.o', 'daemon/table/cs.cpp.3.o', 'daemon/table/dead-nonce-list.cpp.3.o', 'daemon/table/fib-entry.cpp.3.o', 'daemon/table/fib-nexthop.cpp.3.o', 'daemon/table/fib.cpp.3.o', 'daemon/table/measurements-accessor.cpp.3.o', 'daemon/table/measurements-entry.cpp.3.o', 'daemon/table/measurements.cpp.3.o', 'daemon/table/name-tree-entry.cpp.3.o', 'daemon/table/name-tree-hashtable.cpp.3.o', 'daemon/table/name-tree-iterator.cpp.3.o', 'daemon/table/name-tree.cpp.3.o', 'daemon/table/network-region-table.cpp.3.o', 'daemon/table/pit-entry.cpp.3.o', 'daemon/table/pit-face-record.cpp.3.o', 'daemon/table/pit-in-record.cpp.3.o', 'daemon/table/pit-iterator.cpp.3.o', 'daemon/table/pit-out-record.cpp.3.o', 'daemon/table/pit.cpp.3.o', 'daemon/table/strategy-choice-entry.cpp.3.o', 'daemon/table/strategy-choice.cpp.3.o', 'daemon/table/strategy-in
>>>>     fo-host.
>>>>     cpp.3.o', 'daemon/face/ethernet-channel.cpp.3.o', 'daemon/face/ethernet-factory.cpp.3.o', 'daemon/face/ethernet-protocol.cpp.3.o', 'daemon/face/ethernet-transport.cpp.3.o', 'daemon/face/multicast-ethernet-transport.cpp.3.o', 'daemon/face/unicast-ethernet-transport.cpp.3.o', 'daemon/face/pcap-helper.cpp.3.o', 'daemon/face/unix-stream-channel.cpp.3.o', 'daemon/face/unix-stream-factory.cpp.3.o', 'daemon/face/unix-stream-transport.cpp.3.o', 'daemon/face/websocket-channel.cpp.3.o', 'daemon/face/websocket-factory.cpp.3.o', 'daemon/face/websocket-transport.cpp.3.o', 'rib/auto-prefix-propagator.cpp.4.o', 'rib/fib-update.cpp.4.o', 'rib/fib-updater.cpp.4.o', 'rib/propagated-entry.cpp.4.o', 'rib/readvertise/client-to-nlsr-readvertise-policy.cpp.4.o', 'rib/readvertise/nfd-rib-readvertise-destination.cpp.4.o', 'rib/readvertise/readvertise-destination.cpp.4.o', 'rib/readvertise/readvertise.cpp.4.o', 'rib/readvertise/readvertised-route.cpp.4.o', 'rib/rib-entry.cpp.4.o', 'rib/rib-manager.cp
>>>>     p.4.o',
>>>>     'rib/rib-update-batch.cpp.4.o', 'rib/rib-update.cpp.4.o', 'rib/rib.cpp.4.o', 'rib/route.cpp.4.o', 'rib/service.cpp.4.o', 'core/city-hash.cpp.2.o', 'core/config-file.cpp.2.o', 'core/global-io.cpp.2.o', 'core/manager-base.cpp.2.o', 'core/network-interface-predicate.cpp.2.o', 'core/network.cpp.2.o', 'core/privilege-helper.cpp.2.o', 'core/random.cpp.2.o', 'core/rtt-estimator.cpp.2.o', 'core/scheduler.cpp.2.o', 'core/logger-factory.cpp.2.o', 'core/logger.cpp.2.o', '-o', '/home/ltx/NDN/nfd/build/bin/nfd', '-Wl,-Bstatic', '-L/usr/lib/x86_64-linux-gnu', '-Wl,-Bdynamic', '-L/usr/local/lib', '-L/usr/lib/x86_64-linux-gnu', '-lndn-cxx', '-lboost_system', '-lboost_filesystem', '-lboost_date_time', '-lboost_iostreams', '-lboost_regex', '-lboost_program_options', '-lboost_chrono', '-lboost_thread', '-lboost_log', '-lboost_log_setup', '-lssl', '-lcrypto', '-lsqlite3', '-lrt', '-lpthread', '-lboost_system', '-lboost_chrono', '-lboost_program_options', '-lboost_thread', '-lboost_log', '-lboos
>>>>     t_log_se
>>>>     tup', '-lrt', '-lpcap']
>>>>
>>>> Thank you,
>>>> Tianxiang
>>>> _______________________________________________
>>>> Nfd-dev mailing list
>>>> Nfd-dev at lists.cs.ucla.edu
>>>> http://www.lists.cs.ucla.edu/mailman/listinfo/nfd-dev
>>> _______________________________________________
>>> Nfd-dev mailing list
>>> Nfd-dev at lists.cs.ucla.edu
>>> http://www.lists.cs.ucla.edu/mailman/listinfo/nfd-dev
> _______________________________________________
> Nfd-dev mailing list
> Nfd-dev at lists.cs.ucla.edu
> http://www.lists.cs.ucla.edu/mailman/listinfo/nfd-dev



More information about the Nfd-dev mailing list