ndn-cxx与nfd的安装
平台:Ubuntu 16.04
-
安装ndn-cxx
要从源代码构建 ndn-cxx,必须首先安装 C++ 编译器和所有必要的开发工具和库
终端输入:
sudo apt install g++ pkg-config python3-minimal libboost-all-dev libssl-dev libsqlite3-dev
安装附件依赖项
sudo apt install doxygen graphviz python3-pip sudo pip3 install sphinx sphinxcontrib-doxylink //报错的话就不装,可能是老版所需要的
下载ndn-cxx,并将其移动到/usr/local/lib路径下
# Download ndn-cxx git clone https://github.com/named-data/ndn-cxx
#此时ndn-cxx在home目录下 sudo mv ndn-cxx /usr/local/lib
接着进入ndn-cxx目录,执行以下步骤
cd /usr/local/lib/ndn-cxx sudo ./waf configure sudo ./waf sudo ./waf install
sudo ldconfig sudo ./waf configure --with-examples sudo ./waf sudo ./waf install
到此,ndn-cxx就安装完成。
-
安装nfd
安装NFD包,可以用git,但是失败了,直接下载到home目录下,再移动到/usr/local/lib下[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传
添加NDN PPA
#首先需要安装一个add-apt-repository工具 sudo apt-get install software-properties-common #安装好后,运行以下命令添加NDN PPA 存储库 sudo add-apt-repository ppa:named-data/ppa sudo apt-get update
安装 NFD 和其他 NDN 包
sudo apt-get install nfd
sudo apt-get install build-essential pkg-config libboost-all-dev \ libsqlite3-dev libssl-dev libpcap-dev
构建联机帮助页和 API 文档:
sudo apt-get install doxygen graphviz python-sphinx
进入NFD目录,并进入root模式,安装库
cd /usr/local/lib/NFD sudo su curl -L https://github.com/zaphoyd/websocketpp/archive/0.7.0.tar.gz > websocket.tar.gz tar zxf websocket.tar.gz -C websocketpp/ --strip 1 exit
注意下列步骤,安装过程中出错
sudo ./waf configure sudo ./waf sudo ./waf install
#出现了这样的错误,实际是内存不够,将Ubuntu内存提高即可 g++: internal compiler error: Killed (program cc1plus)
接着执行比较关键的一步
sudo cp /usr/local/etc/ndn/nfd.conf.sample /usr/local/etc/ndn/nfd.conf
到此,NFD安装完成。
-
测试
首先,启动nfd
nfd-start
这里用到了2台虚拟机,每一台虚拟机都安装好了NFD,并且ndn-cxx都包含了examples
Consumer:ip地址ip1(将ip1替换成真实ip)
#与远端创建一个信道 nfdc face create udp://ip1 #注册 nfdc route add /example/testApp udp://ip1 #进入ndn-cxx目录,运行消费者程序 ./build/examples/consumer
Producer:ip地址ip2
nfdc face create udp://ip2 ./build/examples/producer