Ubuntu安装NFD

自用,用于搭建物理节点

基于刚装配完系统的ubuntu20.04

先安装NDN-cxx:

Getting started with ndn-cxx — ndn-cxx: NDN C++ library with eXperimental eXtensions 0.8.1 documentation

前提环境配置:

sudo apt install build-essential pkg-config python3-minimal libboost-all-dev libssl-dev libsqlite3-dev

sudo apt install doxygen graphviz python3-pip

pip3 install --user sphinx sphinxcontrib-doxylink

装NFD前置:

sudo apt install software-properties-common

sudo add-apt-repository ppa:named-data/ppa

sudo apt update

sudo apt install nfd

sudo apt install git

git代码:

git clone https://github.com/named-data/ndn-cxx.git

git clone --recursive https://github.com/named-data/NFD.git

前置安装

sudo apt install libpcap-dev libsystemd-dev

分别安装ndn-cxxNFD

./waf configure

./waf

sudo ./waf install

nfd.conf.sample copy一份为 nfd.conf,进行配置(另外两项功能不明)

进入管理员模式:sudo nautilus

或直接更改

sudo cp /usr/local/etc/ndn/nfd.conf.sample /usr/local/etc/ndn/nfd.conf

更新系统

sudo apt update

sudo apt upgrade

(注意:22.04安装完毕后需要运行sudo ldconfig以更新缓存库)

至此安装完毕,使用nfd-start

关闭:nfd-stop

状态:nfd-status

若报错,尝试重新编译安装NFD

更改NFD配置文件后,重新配置流程:

./waf clean ./waf configure ./waf sudo ./waf install

启用例程(ndn-cxx

./waf configure --with-examples

./waf

sudo ./waf install

sudo ldconfig  # on Linux only

2024/7/11更新:针对ubuntu20.04桌面版在树莓派4上不支持的问题。

烧录安装20.04服务器版本后执行:

  1. sudo apt update

  2. sudo apt upgrade -y

  3. 安装桌面环境:sudo apt install -y ubuntu-desktop

  4. 配置默认显示管理器为 gdm3:sudo dpkg-reconfigure gdm3

  5. 如果第四步报错,执行:sudo systemctl start gdm3,启动gdm3服务,启动后会启动可视化桌面

2024/7/16更新:针对Raspberry PI OS(64)系统(arm)的安装

1. 用 sudo apt-get install doxygen graphviz sphinx-doc sphinx-common 替代官网的pip3 install --user sphinx sphinxcontrib-doxylink。

这样可以避免构建虚拟py环境导致的编译文件指向问题,尽量将sphinx-build指向usr/bin/这样的默认目录。

2. 后续正常安装,忽略doxylink等拓展没找到的警告(安装完毕后解决)

解决:确保/usr/local/lib包含libndn-cxx.so、libndn-cxx.so.0.8.1后,配置环境:

echo 'export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH' >> ~/.bashrc
source ~/.bashrc

sudo ldconfig

完成配置(之前虚拟环境浪费了很多时间,尽量建议安装默认环境,不可盲从error对应的建议)

银河麒麟以及树莓派系统(arm)通用,解决libndn-cxx.so文件无法识别的问题,/usr/local/lib为libndn-cxx.so所在路径,银河麒麟V10在lib64文件夹下。
export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH

echo "/usr/local/lib" | sudo tee /etc/ld.so.conf.d/ndn-cxx.conf

sudo ldconfig


 

  • 6
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
NDN tools是一套用于NDN(Named Data Networking)网络的工具集,包括ndncatchunks和ndnputchunks等程序。要安装NDN tools,首先需要在Ubuntu安装ndn-cxx和NFD。可以按照官方的安装教程进行安装,但也可以参考一些博主整理的方法,比如这篇博文\[1\]提供了一种较为简单易用的安装方法。 安装NDN tools后,可以使用ndncatchunks和ndnputchunks来进行文件的数据段传输。ndnputchunks是一个生产者程序,它从标准输入中读取文件,并将其作为NDN数据段提供。ndncatchunks是一个消费者程序,它获取文件的数据片段,并将检索到的文件内容写入标准输出\[2\]。 在ndncatchunks中,可以使用版本发现来获取被请求内容的元数据。如果在用户指定的NDN名称末尾出现版本组件,则将使用提供的版本号。否则,将发送发现兴趣以获取数据版本\[2\]。 ndncatchunks中还有兴趣包管道类型的选项,包括fixed、aimd和cubic。fixed表示保持固定大小的飞行兴趣窗口,aimd表示通过增加-增加/增加-减少调整窗口大小,cubic表示类似于TCP cubic算法的窗口调整\[2\]。 下面是一个使用示例,使用ndnputchunks发布一个具有特定版本的数据。命令如下: ndnputchunks /localhost/demo/gpl3/%FD%00%00%01Qc%CF%17v < /usr/share/common-licenses/GPL-3 这个命令将在/localhost/demo/gpl3前缀下发布一个具有特定版本的GPL-3许可的文本\[3\]。 希望以上信息对您有所帮助。如果还有其他问题,请随时提问。 #### 引用[.reference_title] - *1* [ndn-tools:ndn-tlv-ping的使用](https://blog.csdn.net/MakiSlytherin/article/details/103409022)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* *3* [ndn-tools:chunks的使用](https://blog.csdn.net/MakiSlytherin/article/details/103476534)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值