mini-ndn0.5.0 安装教程 (避免踩坑)
写在前面
首先需要确定一些配置,因为在安装的过程中需要编译一些内容,所以需要提前准备好。
本人之前ubuntu系统可能比较乱,在尝试很多次安装后,仍然失败,所以就直接重装了一下。说一下我自己的一些配置:
ubuntu18.04、git、gcc、g++、python(2.7 ubuntu18.04自带的,不需要改变python的版本)
网络要求很高:在整个安装过程中,对网速的要求比较高,绝大多数安装过程出错的原因都是网络问题,很多包没有下载完全。
安装
下载
首先需要从github上下载:
git clone https://github.com/named-data/mini-ndn
这个过程
问题:一般会报错:fatal,TLS连接失败,这个也是网络问题
解决方法:再重新执行一次就可以
安装
下载完成后,会在当前路径上出现一个mini-ndn的文件夹。
cd mini-ndn ./install.sh
-a all dependencies
-i install mink-ndn
-n install NDN dependcies of mini-ndn including infoedit
-p patch ndn-cxx with dummy key chain
-w install mininet-wifi and dependcies
进入文件夹之后,执行./install.sh的命令,然后./install.sh后面接不同的命令代表不同的意思。
一般安装过程中只会用到 -a 和 -w 两个命令。
建议第一次的时候,使用
./install.sh -a 安装所有的依赖
静静等待,祈祷不要报错,过程中可能会遇到 cloning xxx的时候,一直卡着不动,然后就报错的问题,这样的话就只能重新开始。
安装过程中如果遇到这些错误,不用管,对后面的安装不会有影响。
静静等待 x2
如图所示,即为build success。
-------------------------------------------------------------------------------------------------------------------------------
测试1 nfd是否安装成功
但是,你以为到这里就结束了?(我一开始也是这样天真)这可能要根据你后面要做的工作来定
首先测试一下nfd是否安装成功:
sudo nfd-start
问题:如果出现了上图中的样子,说明nfd没有正常启动,看到exception的提示,去对应的文件夹下查看,发现并没有nfd.conf这个文件
解决方法:
sudo cp /usr/local/etc/ndn/nfd.conf.sample/usr/local/etc/ndn/nfd.conf
执行完之后,就会出现nfd.conf这个文件。
再次执行nfd-start,出现以下内容:(换了下ubuntu的主题,so ......)则说明nfd启动成功
测试2 mininet-wifi是否安装成功
- ndnputchunks是一个生产者程序,它从标准输入中读取文件,并将其作为NDN数据段提供。它根据NDN命名约定,将版本号和段号组件附加到指定的名称。
- ndncatchunks是一个消费者程序,它获取文件的数据片段,可选地发现文件的最新版本,并将检索到的文件内容写入标准输出。
ndnputchunks -v /test < filename 生产者发送一个文件 ndncatchunks -v /test 消费者接收
问题:mininet-wifi和部分依赖没有安装好
解决方法:
./install.sh -w install mininet-wifi and dependcies
前面说过,./install -w 是安装mininet-wifi和依赖的,继续执行。该过程中会有很多包需要collecting和cloning,如果遇到fatal或者下载超时,需要重新开始。
(因为家里网速不行,尝试了手机热点和换镜像源的方式,最后成功了,关于更换ubuntu镜像源的方式,请参照另一篇博客:https://www.cnblogs.com/laysfq/p/15229418.html)
根据上面说过的测试方法,在两个窗口分别执行完成后,结果是:
ndnputchunks -v /test < filename 生产者发送一个文件
ndncatchunks -v /test 消费者接收
接收成功,到这里,整个 就算安装完成了。
还可以通过测试mini-ndn/mininet-wifi/examples文件夹下的代码来测试:(出现以下结果,即为成功)
sudo python ./sta_ap_mode.py
写在最后
如果在安装过程中遇到其他的问题,欢迎私信我,邮箱地址:fq199911@163.com
另外感谢师兄和老师,整体的安装过程难度不大,主要是网络的问题,建议选择网速好且稳定的地方!
mini-ndn0.5.0 安装教程 (避免踩坑)的更多相关文章
- Windows环境下Android Studio v1.0安装教程
Windows环境下Android Studio v1.0安装教程 准备工具 JDK安装包. 要求:JDK 7以及以上版本. Android Studio安装文件. Windows: exe(包含SD ...
- 【转】Windows环境下Android Studio v1.0安装教程
原文网址:http://ask.android-studio.org/?/article/9 http://android-studio.org/index.php/docs/experience/1 ...
- Adobe After Effects 2017-14.0安装教程
Adobe After Effects 2017-14.0安装教程 第一步:首先请将电脑的网络断开,很简单:禁用本地连接或者拔掉网线,这样就可以免除登录Creative Cloud帐号,安装更方便快捷 ...
- creo5.0安装教程(图文详解)
PTC公司最近发布了Creo 5.0正式版 ,作为最具其革命性的新一代产品设计软件,其所提供专业的二维和三维设计设计,能帮助企业和公司进行产品生命周期管理(PLM)和制定服务管理解决方案.Creo5. ...
- Greenplum5.16.0 安装教程
Greenplum5.16.0 安装教程 一.环境说明 1.1官方网站 Greenplum官方安装说明:https://gpdb.docs.pivotal.io/5160/install_guide/ ...
- Adobe Audition CC 2017 (10.0)安装教程
Adobe Audition CC 2017 (10.0)安装教程 注:下载地址在文章末尾 第一步:首先请将电脑的网络断开,很简单:禁用本地连接或者拔掉网线,这样就可以免除登录Creative Clo ...
- Adobe Photoshop CC 2017-18.0安装教程
Adobe Photoshop CC 2017-18.0安装教程 注:下载链接在文章后面 第一步:首先请将电脑的网络断开,很简单:禁用本地连接或者拔掉网线,这样就可以免除登录Creative Clou ...
- [转]Tomcat9.0安装教程 Tomcat9.0环境变量配置教程
[转]Tomcat9.0安装教程 Tomcat9.0环境变量配置教程 [转]超详细MySQL安装及基本使用教程
- Android笔记——Windows环境下Android Studio v1.0安装教程
本文主要讲解Windows环境下Android Studio的安装教程,Mac的Android Studio安装与此类似不在赘述,另外友情提示Windows下的SDK与Mac的SDK是通用的,可以直接 ...
- MySQL Server 5.0安装教程
相信很多朋友刚开始接触mysql数据库服务器,下面是mysql的安装教程,步骤明细也有详细的说明. 工具/原料 mysql MySQL安装的图解 1 打开下载的mysql安装文件mysql-5 ...
随机推荐
- 第十一篇 -- 如何实现MFC窗口的最大化以及控件随最大化
这一篇介绍的是怎么实现MFC窗口的最大最小化,以及里面控件大小也随之改变 第一步:实现窗口最大最小化 首先右击窗口空白处,打开properties,将里面的MaximizeBox和MinimizeBo ...
- CentOS 8.0 安装docker 报错:Problem: package docker-ce-3:19.03.4-3.el7.x86_64 requires containerd.io >= 1
1.错误内容 package docker-ce-3:19.03.2-3.el7.x86_64 requires containerd.io >= 1.2.2-3, but none of th ...
- MFC发送自定义消息
1.在窗口的头文件中声明: afx_msg LRESULT OnMyMessage(WPARAM wParam, LPARAM lParam); 2.在cpp的BEGIN_MESSAGE_MAP和EN ...
- Vue slot 插槽用法:自定义列表组件
Vue 框架的插槽(slot)功能相对于常用的 v-for, v-if 等指令使用频率少得多,但在实现可复用的自定义组件时十分有用.例如,如果经常使用前端组件库的话,就会经常看到类似的用法: < ...
- 苹果手机点击输入框input 页面放大 超出屏幕问题
<meta name="viewport" content="width=device-width,minimum-scale=1.0,maximum-scale ...
- Java基础——JavaDoc生成文档
JavaDoc生成文档 package Top1; /** * @author lwt * @version 1.0 * @since 1.8 * */ public class ...
- Salesforce Integration 概览(五) Remote Call-In(远程操作 外部->salesforce)
本篇参考:https://resources.docs.salesforce.com/sfdc/pdf/integration_patterns_and_practices.pdf 本篇博客介绍 Re ...
- 1065 A+B and C (64bit) (20分) 测试点3 别用cin
cin的话,处理不了这么大的数?? 要拐回scanf("%lld"): 啊啦搜
- mysqldump备份恢复数据
//导出数据(多个表以空格间隔)mysqldump -h 127.0.0.1 -uroot -p123456 --default-character-set=utf8 pandora report & ...
- 常见的六种容错机制:Fail-Over、Fail-Fast、Fail-Back、Fail-Safe,Forking 和 Broadcast
目录 1.Fail-Over:故障转移 2.Fail-Fast:快速失败 3.Fail-Back:失效自动恢复 4.Fail-Safe:失效安全 5.Forking:并行调用多个服务 6.Broadc ...