在 Ubuntu 22.04 上源码安装 Podman 4

最近在研究用 Podman 当作极狐GitLab 的 Runner,来跑 CI/CD,根据 Podman 官网安装指南,在 Ubuntu 上安装使用如下命令即可:

# Ubuntu 20.10 and newer
sudo apt-get update
sudo apt-get -y install podman

安装完毕,查看了一下版本

podman version
Version:      3.4.4
API Version:  3.4.4
Go Version:   go1.18.1
Built:        Thu Jan  1 08:00:00 1970
OS/Arch:      linux/amd64

版本是 3.4.4。但是在创建 Runner 的过程中,发现极狐GitLab 官方要求,在使用 Podman 的时候,版本必须高于 4.2。然后想用 apt 的方式来升级一下,未果。然后看到了 Podman GitHub 上的一个 Discussion——How to install podman 4.4 on Ubuntu 22.04。大概意思就是在 Ubuntu 22.04 上默认安装的就是 3.4.x 版本,要想安装就只能源码编译安装了。无奈,开启了源码编译安装的旅程。

编译前的准备

首先搞了一台 Ubuntu 22.04 版本的服务器,安装上了

<think>嗯,用户想在Ubuntu 22.04安装不同版本的GNURadio。首先,我得回忆一下GNURadio的安装方法。通常,Ubuntu的官方仓库可能只提供特定版本的软件包,尤其是LTS版本可能倾向于较旧的稳定版。所以,用户如果想安装其他版本,可能需要通过第三方仓库或者源码编译。 记得GNURadio常用PPA来提供较新的版本。比如,可能有PPA:gnuradio/gnuradio-releases这样的仓库。但需要确认是否支持Ubuntu 22.04。另外,用户提到不同版本,可能需要不同的依赖管理,比如使用pyenv或者虚拟环境来处理Python依赖,因为GNURadio的部分组件可能依赖特定版本的Python库。 还有,源码编译也是一个选项,但步骤会比较复杂,需要安装必要的依赖项,比如UHD、Boost、Qt等。源码编译允许用户指定版本,但可能会遇到依赖冲突或编译错误的问题,需要一定的调试能力。 另外,用户提到的引用[1]中提到了在Ubuntu Hardy Heron和Lucid Lynx上的配置,但Ubuntu 22.04比较新,可能需要不同的方法。引用[2]、[3]、[4]看起来和问题无关,可能可以忽略。 需要注意用户可能希望同时安装多个版本,可能需要使用不同的安装路径或者容器化技术,如Docker,来隔离不同版本的环境。此外,使用conda环境也可能是一个解决方案,因为conda允许创建独立的环境并安装特定版本的软件包。 最后,确保在回答中提供清晰的步骤,比如添加PPA、安装特定版本,或者从源码编译,同时提醒用户注意依赖项和可能的兼容性问题。还要检查是否有官方文档或社区推荐的步骤适用于Ubuntu 22.04。</think>### 如何在Ubuntu 22.04安装不同版本的GNURadio #### 方法1:通过PPA安装特定版本 1. **添加GNURadio官方PPA** GNURadio团队为Ubuntu提供了多个版本的预编译包。执行以下命令添加PPA: ```bash sudo add-apt-repository ppa:gnuradio/gnuradio-releases sudo apt update ``` 2. **查看可用版本并安装** 通过以下命令查看可安装的版本: ```bash apt list -a gnuradio ``` 选择目标版本(例如`gnuradio-3.10`)进行安装: ```bash sudo apt install gnuradio=3.10.0~rc4-2build1 ``` 3. **验证安装** 运行`gnuradio-companion --version`检查版本是否匹配。 #### 方法2:源码编译安装(自定义版本) 1. **安装依赖项** ```bash sudo apt install cmake git libboost-all-dev liblog4cpp5-dev libuhd-dev libgmp-dev swig python3-numpy python3-mako ``` 2. **克隆源码并切换分支** ```bash git clone https://github.com/gnuradio/gnuradio.git cd gnuradio git checkout v3.9.5 # 替换为目标版本标签 ``` 3. **编译与安装** ```bash mkdir build && cd build cmake -DCMAKE_INSTALL_PREFIX=/usr/local ../ make -j$(nproc) sudo make install ``` #### 方法3:使用Conda环境隔离版本 1. **安装Miniconda** 从[Miniconda官网](https://docs.conda.io/en/latest/miniconda.html)下载并安装。 2. **创建独立环境并安装GNURadio** ```bash conda create -n gnuradio-env python=3.8 conda activate gnuradio-env conda install -c conda-forge gnuradio=3.8 # 指定版本 ``` #### 注意事项 - **版本兼容性**:某些GNURadio版本可能需要特定版本的UHD或Python库,需参考[官方文档](https://wiki.gnuradio.org)确认依赖关系[^1]。 - **路径冲突**:源码安装时建议使用`/usr/local`以外的独立目录(如`/opt/gnuradio`),避免与系统包冲突[^1]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值