ubuntu20.04 安装CORE+EMANE

ubuntu20.04安装9.0.3版本的CORE ,整体流程按照官网的步骤来。这里官网使用的是Ubuntu22,python版本要大于3.9。官方验证过可以安装的版本有ubuntu18、20、22,但只给出了ubuntu22的安装方法,由于18、20的python版本较低,不满足安装条件,所以有些问题需要注意一下,我这里记录一下。

Ubuntu - CORE Documentation (coreemu.github.io)


 1.安装新版本的python

 由于CORE9.0.3需要python3.9及以上版本支持,而ubuntu20python版本是3.8,所以第一步先添加一个新版的python

2.安装CORE 

  •  python版本换完了按照官方步骤装就行,上述的安装步骤到这里都不会有问题,git 403的自行解决。
# 安装依赖环境
sudo apt-get update -y
sudo apt-get install -y ca-certificates git sudo wget tzdata libpcap-dev libpcre3-dev \
    libprotobuf-dev libxml2-dev protobuf-compiler unzip uuid-dev iproute2 iputils-ping \
    tcpdump

# 安装CORE
cd ~/Documents
git clone https://github.com/coreemu/core
cd core

之后运行安装脚本,这里由于我们之前python3.10关联的python命令,所以需要进入脚本setup.sh修改一下。这里是吧开始的python3改成了python,把下面的PYTHON_DEP改成的PYTHON。

#!/bin/bash

##########################################
PYTHON="${PYTHON:=python}"
PYTHON_DEP="${PYTHON_DEP:=python}"
##########################################

# install pre-reqs using yum/apt
if [ -z "${NO_SYSTEM}" ]; then
  if command -v apt &> /dev/null
  then
    echo "setup to install CORE using apt"
########################################################
    sudo apt install -y ${PYTHON_DEP}-pip ${PYTHON}-venv
########################################################
  elif command -v yum &> /dev/null
  then
    echo "setup to install CORE using yum"
    sudo yum install -y ${PYTHON_DEP}-pip
  else
    echo "apt/yum was not found"
    echo "install python3, pip, venv, pipx, and invoke to run the automated install"
    exit 1
  fi
fi

# install tooling for invoke based installation
${PYTHON} -m pip install --user pipx==0.16.4
${PYTHON} -m pipx ensurepath
export PATH=$PATH:~/.local/bin
pipx install invoke==1.4.1
pipx install poetry==1.2.1

改完之后运行然后刷一下

./setup.sh
source ~/.bashrc

然后改tasks.py里面的python3,也是改成python,这里有两处,我这里实在118和122行。

 然后安装

inv install
  • 这里面会使用到git,网不好的下不下来可能,自己注意一下。然后如果第一次没下下来但创建了文件夹,则会在之后的下载里冲突,提示你已经建立了这个文件夹,这里如果一次没有装完的话要把文件夹手动删掉,名字我记着是ospf-mdr(好像还有另一个,具体的你看提示吧,名字记不清了),在你git的core文件夹的上一级,这里按照官方教程走过来的话就是在~/Download目录下
  • 这里如果Ubuntu下不下来的话,自己把这个c.run注释掉,然后自己把这个文件夹放到~/Download目录下,名字就叫ospf-mdr。他好像还git了另一个,如果不行的话还是一样的操作

3.安装EMANE

直接按照官方步骤来就行,我记着没出错

# install emane
cd ~/Documents
wget https://github.com/protocolbuffers/protobuf/releases/download/v3.19.6/protoc-3.19.6-linux-x86_64.zip
mkdir protoc
unzip protoc-3.19.6-linux-x86_64.zip -d protoc
git clone https://github.com/adjacentlink/emane.git
cd emane
./autogen.sh
./configure --prefix=/usr
make -j$(nproc)
sudo make install
cd src/python
make clean
PATH=~/Documents/protoc/bin:$PATH make
sudo /opt/core/venv/bin/python -m pip install .

4.运行及其他问题

按照以上步骤就装完了,此时CORE已经在/opt/core/venv下创建了一个虚拟环境,可以在此目录下使用source bin/activate 激活环境 deactivate退出。你需要把环境变量添加以下,这也是官方步骤的最后一步。

但是除此之外还有些小问题需要处理

1、在虚拟环境pip安装时出现没有权限

这主要是因为在创建虚拟环境时使用了root用户

sudo chown -R 用户名:用户名 /opt/core/venv

这里后面的地址就是虚拟环境的地址没有虚拟环境权限

2、no moudule named _tkinter

这个问题发生在想要使用core-gui时,会爆出没有tk模块的错误。

这主要是因为我们使用了两个版本的python且ubuntu20的默认版本时3.8,这就导致你在使用apt安装tk这一基础库时只安装3.8的版本(试了一下,换了默认版本之后也只是安装3.8的版本,可能是看的linux内核吧)。按照网上的apt安装tk3.10版本也是各种装不上,为此我们需要手动安装tk

http://archive.ubuntu.com/ubuntu/pool/main/p/python3-stdlib-extensions/python3-tk_3.10.4-0ubuntu1_amd64.deb
  • 使用dpkg命令解压到某处
dpkg -x python3-tk_3.10.4-0ubuntu1_amd64.deb /tmp/tkinter
  • 将.so文件复制到python3.10的依赖目录
sudo cp /tmp/tkinter/data/usr/lib/python3.10/lib-dynload/_tkinter.cpython-310-x86_64-linux-gnu.so /usr/local/lib/python3.10/lib-dynload/

这样你电脑上的环境九安装成功了,但是进入虚拟环境的话还是缺失。需要在虚拟环境内也复制一份(推测先进行这一步在创建环境的话可能就不需要了)。

  • 粘贴到虚拟环境中的python3.10的依赖中
cp /tmp/tkinter/data/usr/lib/python3.10/lib-dynload/_tkinter.cpython-310-x86_64-linux-gnu.so /opt/core/venv/lib/python3.10/site-packages/
  • 在运行core-gui应该就可以正常运行了。
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Ubuntu 20.04安装Notepad需要使用Snap程序包管理器。根据引用和的信息,您可以通过在终端中输入以下命令来安装Notepad: sudo snap install notepad-plus-plus 这将下载并安装Notepad及其所有依赖项。请注意,您需要具有管理员权限才能运行此命令。安装完成后,您可以在应用程序菜单中找到Notepad并开始使用它。 请记住,Notepad是Windows和Mac OS系统上的一个简单但功能强大的代码编辑器,而Ubuntu上的Notepad-plus-plus是为类Unix操作系统提供的兼容版本。如果您对Notepad-plus-plus在Linux上的功能有任何疑问,您可以参考引用中提到的另一个名为Notepadqq的替代编辑器。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [Ubuntu 安装 notepad++ 以及 解决中文字体乱码显示 以及 字体倒了的问题](https://blog.csdn.net/jisuanji198509/article/details/118706780)[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^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"] - *2* [如何在Ubuntu 20.04安装NotePad++](https://blog.csdn.net/hhhhhhhhhhwwwwwwwwww/article/details/117193524)[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^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值