[ndnSIM] No package 'libndn-cxx' found (when porting NLSR)

Carl Zu carlzu8 at gmail.com
Tue Jun 27 12:17:44 PDT 2017


I made the change. Here it is:

 isLibWorking = False
    for defines in [[], ['CRYPTOPP_DISABLE_ASM']]:
        try:
            self.check_cxx(msg='Checking if CryptoPP library works',
                           fragment=CRYPTOPP_CHECK_FRAGMENT,
                           lib='cryptopp',
                           includes="%s/usr/include" % root,
                           libpath="%s/usr/lib" % root,
                           mandatory=True,
                           use=use,
                           defines=defines,
                           uselib_store=var)
            isLibWorking = True
            break
        except:
            # try another flags
            pass

    if mandatory and not isLibWorking:
        self.fatal('CryptoPP is present, but is not usable')

However, still it does not work saying:

Checking if CryptoPP library works                                 : no
Checking if CryptoPP library works                                 : no
CryptoPP is present, but is not usable
(complete log in /home/carl/ndnSIM-NLSR/ns-3/build/config.log)

I would like to again thank you, John, for your attention, great help, and
quick replies. Glad you are a member of this list!!

Regards


On Tue, Jun 27, 2017 at 9:04 PM, John Baugh <jpbaugh at umich.edu> wrote:

> It should be lowercase so cryptopp.py.  but that folder should not be
> empty.  That's weird.
>
> On Jun 27, 2017 2:40 PM, "Carl Zu" <carlzu8 at gmail.com> wrote:
>
>> Dear John,
>>
>> Many thanks. Now could open CryptoPP.py, but surprisingly it is empty,,
>>
>> Regards,
>> C
>>
>> On Tue, Jun 27, 2017 at 7:04 PM, John Baugh <jpbaugh at umich.edu> wrote:
>>
>>> sudo cd ./.waf-tools ?
>>>
>>> On Jun 27, 2017 12:45 PM, "Carl Zu" <carlzu8 at gmail.com> wrote:
>>>
>>>> Dear John,
>>>>
>>>> Thanks again for your guidance.
>>>>
>>>> I cannot cd to this directory. Don't know why.
>>>>
>>>> Thanks anyway.
>>>>
>>>> On Tue, Jun 27, 2017 at 6:38 PM, John Baugh <jpbaugh at umich.edu> wrote:
>>>>
>>>>> You can cd to .waf-tools.  Then you should be able to access the
>>>>> script.
>>>>>
>>>>> Near the bottom of the CryptoPP.py script there is a reference to
>>>>> %s/include and %s/lib.  Change them to %s/local/include etc.  And see if
>>>>> that works.
>>>>>
>>>>> I am not near my code right now but I think I did that.  Either that
>>>>> or it required full path:
>>>>>
>>>>> %s/usr/local/lib
>>>>>
>>>>> On Jun 27, 2017 12:34 PM, "Carl Zu" <carlzu8 at gmail.com> wrote:
>>>>>
>>>>>> Thanks everyone.
>>>>>>
>>>>>> Ashlesh'ssolution does not work for me as well.
>>>>>>
>>>>>> @John: This "./waf-tools" directory looks to be hidden. How can I go
>>>>>> through it so that I can modify the script?
>>>>>>
>>>>>> Overall, it looks as though this problem stems from the huge changes
>>>>>> in ndn-cxx, as Nick mentioned.
>>>>>>
>>>>>> Thanks,
>>>>>> C
>>>>>>
>>>>>> On Tue, Jun 27, 2017 at 6:24 PM, John Baugh <jpbaugh at umich.edu>
>>>>>> wrote:
>>>>>>
>>>>>>> That is also true.
>>>>>>>
>>>>>>> I had tried that technique and it did not work for me.  Hence why I
>>>>>>> ended up modifying the script.  But it could work for others.  I may have
>>>>>>> done something strange at the time.
>>>>>>>
>>>>>>> Thanks
>>>>>>>
>>>>>>> John
>>>>>>>
>>>>>>> On Jun 27, 2017 12:22 PM, "Ashlesh Gawande (agawande)" <
>>>>>>> agawande at memphis.edu> wrote:
>>>>>>>
>>>>>>>> You can also try ./waf configure --with-cryptopp=/usr/local/
>>>>>>>>
>>>>>>>>
>>>>>>>> Ashlesh
>>>>>>>> ------------------------------
>>>>>>>> *From:* John Baugh <jpbaugh at umich.edu>
>>>>>>>> *Sent:* Tuesday, June 27, 2017 11:17:57 AM
>>>>>>>> *To:* Carl Zu
>>>>>>>> *Cc:* ndnsim; Ashlesh Gawande (agawande)
>>>>>>>> *Subject:* Re: [ndnSIM] No package 'libndn-cxx' found (when
>>>>>>>> porting NLSR)
>>>>>>>>
>>>>>>>> In the ndn-cxx/.waf-tools/cryptopp.py script, it appears to be
>>>>>>>> looking for CryptoPP in
>>>>>>>>
>>>>>>>> usr/lib and usr/include
>>>>>>>>
>>>>>>>> So see if installing the CryptoPP there instead of local helps?
>>>>>>>>
>>>>>>>> I had a similar issue before.  I modified the script, but
>>>>>>>> installing to the expected directory is also a legitimate solution.
>>>>>>>>
>>>>>>>> On Jun 27, 2017 12:07 PM, "Carl Zu" <carlzu8 at gmail.com> wrote:
>>>>>>>>
>>>>>>>>> cryptoppis actuaaly installed in  /usr/local/lib
>>>>>>>>>
>>>>>>>>> i even did
>>>>>>>>>
>>>>>>>>> echo /usr/local/lib | sudo tee /etc/ld.so.conf.d/ndn-cxx.conf
>>>>>>>>>
>>>>>>>>> AND
>>>>>>>>>
>>>>>>>>> sudo ldconfig
>>>>>>>>>
>>>>>>>>> Before configuring.
>>>>>>>>>
>>>>>>>>> Thanks,
>>>>>>>>> C
>>>>>>>>>
>>>>>>>>> On Tue, Jun 27, 2017 at 6:00 PM, Carl Zu <carlzu8 at gmail.com>
>>>>>>>>> wrote:
>>>>>>>>>
>>>>>>>>>> Dear John,
>>>>>>>>>>
>>>>>>>>>> May I kindly ask you to explain a bit more?
>>>>>>>>>>
>>>>>>>>>> Thanks,
>>>>>>>>>> C
>>>>>>>>>>
>>>>>>>>>> On Tue, Jun 27, 2017 at 5:49 PM, John Baugh <jpbaugh at umich.edu>
>>>>>>>>>> wrote:
>>>>>>>>>>
>>>>>>>>>>> Where is the CryptoPP installed?  It has to be in the directory
>>>>>>>>>>> that the scripts are looking for it in or the script needs modified.
>>>>>>>>>>>
>>>>>>>>>>> On Jun 27, 2017 11:47 AM, "Carl Zu" <carlzu8 at gmail.com> wrote:
>>>>>>>>>>>
>>>>>>>>>>>> Hi Ashlesh
>>>>>>>>>>>>
>>>>>>>>>>>> you are right. Did install log4xx. Now, the error is :
>>>>>>>>>>>>
>>>>>>>>>>>> Checking for 'libndn-cxx'
>>>>>>>>>>>> : yes
>>>>>>>>>>>> Checking for 'liblog4cxx'
>>>>>>>>>>>> : yes
>>>>>>>>>>>> Checking for OpenSSL library
>>>>>>>>>>>> : yes
>>>>>>>>>>>> Checking for 'protobuf'
>>>>>>>>>>>> : yes
>>>>>>>>>>>> Checking for program 'protoc'
>>>>>>>>>>>> : /usr/bin/protoc
>>>>>>>>>>>> Checking for library pthread
>>>>>>>>>>>> : yes
>>>>>>>>>>>> Checking for 'sqlite3'
>>>>>>>>>>>> : yes
>>>>>>>>>>>> Checking Crypto++ lib
>>>>>>>>>>>> : 5.6.1
>>>>>>>>>>>> Checking if CryptoPP library works
>>>>>>>>>>>> : no
>>>>>>>>>>>> Checking if CryptoPP library works
>>>>>>>>>>>> : no
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> ------------------------------------------------------------
>>>>>>>>>>>> ------------------------------------------------------------
>>>>>>>>>>>> -------------
>>>>>>>>>>>>
>>>>>>>>>>>> Apart from the above question, can I, please, ask you the
>>>>>>>>>>>> reason behind the error below (*when I build NFD*):
>>>>>>>>>>>>
>>>>>>>>>>>> ../tools/nfdc/main.cpp:66: error: undefined reference to
>>>>>>>>>>>> 'ndn::nfd::Controller::Controller(ndn::Face&,
>>>>>>>>>>>> ndn::security::v2::KeyChain&, ndn::security::Validator&)'
>>>>>>>>>>>> ../tools/nfdc/legacy-nfdc.cpp:48: error: undefined reference
>>>>>>>>>>>> to 'ndn::nfd::Controller::Controller(ndn::Face&,
>>>>>>>>>>>> ndn::security::v2::KeyChain&, ndn::security::Validator&)'
>>>>>>>>>>>> ../tools/nfdc/status-report.cpp:60: error: undefined reference
>>>>>>>>>>>> to 'ndn::nfd::Controller::Controller(ndn::Face&,
>>>>>>>>>>>> ndn::security::v2::KeyChain&, ndn::security::Validator&)'
>>>>>>>>>>>> collect2: error: ld returned 1 exit status
>>>>>>>>>>>>
>>>>>>>>>>>> ../tools/ndn-autoconfig/base.cpp:36: error: undefined
>>>>>>>>>>>> reference to 'ndn::nfd::Controller::Controller(ndn::Face&,
>>>>>>>>>>>> ndn::security::v2::KeyChain&, ndn::security::Validator&)'
>>>>>>>>>>>> collect2: error: ld returned 1 exit status
>>>>>>>>>>>>
>>>>>>>>>>>> ../tools/nfd-autoreg.cpp:56: error: undefined reference to
>>>>>>>>>>>> 'ndn::nfd::Controller::Controller(ndn::Face&,
>>>>>>>>>>>> ndn::security::v2::KeyChain&, ndn::security::Validator&)'
>>>>>>>>>>>> collect2: error: ld returned 1 exit status
>>>>>>>>>>>>
>>>>>>>>>>>> /usr/include/c++/4.8/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/nfd.cpp:146: error: undefined reference to
>>>>>>>>>>>> 'ndn::mgmt::Dispatcher::Dispatcher(ndn::Face&,
>>>>>>>>>>>> ndn::security::v2::KeyChain&, ndn::security::SigningInfo const&, unsigned
>>>>>>>>>>>> long)'
>>>>>>>>>>>> ../rib/rib-manager.cpp:68: error: undefined reference to
>>>>>>>>>>>> 'ndn::nfd::Controller::Controller(ndn::Face&,
>>>>>>>>>>>> ndn::security::v2::KeyChain&, ndn::security::Validator&)'
>>>>>>>>>>>> ../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)'
>>>>>>>>>>>> collect2: error: ld returned 1 exit status
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> Thanks Ashlesh.
>>>>>>>>>>>> C
>>>>>>>>>>>>
>>>>>>>>>>>> On Tue, Jun 27, 2017 at 5:11 PM, Ashlesh Gawande (agawande) <
>>>>>>>>>>>> agawande at memphis.edu> wrote:
>>>>>>>>>>>>
>>>>>>>>>>>>> Need to install log4cxx
>>>>>>>>>>>>>
>>>>>>>>>>>>> http://named-data.net/doc/NLSR/current/INSTALL.html
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>> Ashlesh
>>>>>>>>>>>>> ------------------------------
>>>>>>>>>>>>> *From:* ndnSIM <ndnsim-bounces at lists.cs.ucla.edu> on behalf
>>>>>>>>>>>>> of Carl Zu <carlzu8 at gmail.com>
>>>>>>>>>>>>> *Sent:* Tuesday, June 27, 2017 5:25:14 AM
>>>>>>>>>>>>> *To:* ndnsim at lists.cs.ucla.edu
>>>>>>>>>>>>> *Subject:* Re: [ndnSIM] No package 'libndn-cxx' found (when
>>>>>>>>>>>>> porting NLSR)
>>>>>>>>>>>>>
>>>>>>>>>>>>> One step ahead. Now I get:
>>>>>>>>>>>>>
>>>>>>>>>>>>> Checking for 'liblog4cxx'
>>>>>>>>>>>>> : not found
>>>>>>>>>>>>>
>>>>>>>>>>>>> Checking for 'liblog4cxx'
>>>>>>>>>>>>> ['/usr/bin/pkg-config', '--cflags', '--libs', 'liblog4cxx']
>>>>>>>>>>>>> err: Package liblog4cxx was not found in the pkg-config search
>>>>>>>>>>>>> path.
>>>>>>>>>>>>> Perhaps you should add the directory containing `liblog4cxx.pc'
>>>>>>>>>>>>> to the PKG_CONFIG_PATH environment variable
>>>>>>>>>>>>> No package 'liblog4cxx' found
>>>>>>>>>>>>>
>>>>>>>>>>>>> I have seen the previous messages exchanged regarding this
>>>>>>>>>>>>> issue in this forum. ndn-cxx, NFD, and NLSR are the latest versions. This
>>>>>>>>>>>>> is very strange that I still get this error. Any guidance is highly
>>>>>>>>>>>>> appreciated.
>>>>>>>>>>>>>
>>>>>>>>>>>>> Thanks.
>>>>>>>>>>>>> C
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>> On Tue, Jun 27, 2017 at 9:50 AM, Carl Zu <carlzu8 at gmail.com>
>>>>>>>>>>>>> wrote:
>>>>>>>>>>>>>
>>>>>>>>>>>>>> Hi
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> I am trying to port NLSR to ndnSIM according to
>>>>>>>>>>>>>> https://github.com/3rd-ndn-hackathon/ndnSIM-NLSR/blob/master
>>>>>>>>>>>>>> /PORTING.md
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> However, when I configure (./waf configure --enable-examples
>>>>>>>>>>>>>> --enable-nlsr), I get the following error:
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Checking for 'libndn-cxx'
>>>>>>>>>>>>>> : not found
>>>>>>>>>>>>>> The configuration failed
>>>>>>>>>>>>>> (complete log in /home/carl/ndnSIM-NLSR/ns-3/bu
>>>>>>>>>>>>>> ild/config.log)
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> When I go through config.log, it says:
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Checking for 'libndn-cxx'
>>>>>>>>>>>>>> ['/usr/bin/pkg-config', '--cflags', '--libs', 'libndn-cxx']
>>>>>>>>>>>>>> err: Package libndn-cxx was not found in the pkg-config
>>>>>>>>>>>>>> search path.
>>>>>>>>>>>>>> Perhaps you should add the directory containing
>>>>>>>>>>>>>> `libndn-cxx.pc'
>>>>>>>>>>>>>> to the PKG_CONFIG_PATH environment variable
>>>>>>>>>>>>>> No package 'libndn-cxx' found
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Any guidance is highly appreciated.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Thanks,
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> C
>>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> _______________________________________________
>>>>>>>>>>>> ndnSIM mailing list
>>>>>>>>>>>> ndnSIM at lists.cs.ucla.edu
>>>>>>>>>>>> http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>
>>>>>>
>>>>
>>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.lists.cs.ucla.edu/pipermail/ndnsim/attachments/20170627/2958aa4a/attachment-0001.html>


More information about the ndnSIM mailing list