MacPorts 中安装高/低版本软件方式,以 RabbitMQ 为例

查询信息

这里以 RabbitMQ 为例,通过搜索得到默认安装版本信息:

bash 复制代码
port search rabbitmq-server

结果

复制代码
~/Downloads> port search rabbitmq-server
rabbitmq-server @3.11.15 (net)
    The RabbitMQ AMQP Server
~/Downloads>

获取二进制文件

但当前官网已更新到 4.x 版本,例如我们需要安装 4.0.4 版本,首先去到 RabbitMQ 的 GitHub release 页:https://github.com/rabbitmq/rabbitmq-server/releases

下载 rabbitmq-server-generic-unix-4.0.4.tar.xz 文件,以便获取相关指纹进行替换

修改 Portfile

所在目录

在查询结果中我们注意到 rabbitmq-server @3.11.15 (net),括号内是 net

而 MacPorts 对应的软件相关 Portfile 存储于 /opt/local/var/macports/sources/rsync.macports.org/macports/release/tarballs/ports

因为 RabbitMQ 属于 net,这里我们还需要进入 net 目录才能找到 rabbitmq-server

所以其最终对应的路径为 /opt/local/var/macports/sources/rsync.macports.org/macports/release/tarballs/ports/net/rabbitmq-server

获取 rmd160、sha256 和文件大小

sha256 非常好获取,在文件所在目录直接运行即可

bash 复制代码
$ sha256 ./rabbitmq-server-generic-unix-4.0.4.tar.xz

SHA256 (./rabbitmq-server-generic-unix-4.0.4.tar.xz) = b024b75935bc9b30597b3ea5c5d3846b8a8f887e0f1d5703f00974ea481342f3

而 rmd160 则需要利用 openssl 命令(如果没有可以先通过 port 安装):

复制代码
$ openssl dgst -rmd160 ./rabbitmq-server-generic-unix-4.0.4.tar.xz

RIPEMD-160(./rabbitmq-server-generic-unix-4.0.4.tar.xz)= 90dd6e7a4ce6a34cd3ec0af62995cdecc5812b4e

文件大小直接通过 ls -l 命令即可:

bash 复制代码
$ ls -l ./rabbitmq-server-generic-unix-4.0.4.tar.xz

-rw-r--r--@ 1 maxsky  staff  16236548 12 18 14:43 ./rabbitmq-server-generic-unix-4.0.4.tar.xz

其中 16236548 就是文件字节大小

替换对应内容

原内容

复制代码
github.setup        rabbitmq rabbitmq-server 3.11.15 v

checksums           rmd160  c30a5ee11a501b8a271bda39f92dd8125230f4c6 \
                    sha256  538be3c85e8cad10de62705714f71eaacb04339f73a81477c91478600bb8253c \
                    size    20897748

将原内容中的版本号以及两个指纹值修改保存即可

复制代码
github.setup        rabbitmq rabbitmq-server 4.0.4 v

checksums           rmd160  90dd6e7a4ce6a34cd3ec0af62995cdecc5812b4e \
                    sha256  b024b75935bc9b30597b3ea5c5d3846b8a8f887e0f1d5703f00974ea481342f3 \
                    size    16236548

执行安装/更新

低版本升级直接运行 upgrade,安装就直接 install

bash 复制代码
sudo port upgrade rabbitmq-server
相关推荐
Joshua-a4 小时前
macOS下arm编译缺少stdint.h等问题
arm开发·macos
m_136875 小时前
Mac Intel 芯片部署 YOLO(Docker 方式,支持离线打包与 Compose 管理)
yolo·macos·docker
hong_zc7 小时前
RabbitMQ工作模式(下)
rabbitmq
伐尘8 小时前
【mac】macOS上的实用Log用法
macos
liulilittle11 小时前
UNIX/macOS路由表查询原理与实现
服务器·开发语言·c++·macos·unix·编程语言
xingxing_F12 小时前
PastePal for Mac 剪贴板历史记录管理器
macos
snows_l12 小时前
如何在MacOS上卸载并且重新安装Homebrew
macos·homebrew·utils
m_1368714 小时前
YOLOv8 在 Intel Mac 上的 Anaconda 一键安装教程
yolo·macos
m_1368714 小时前
Mac Intel 芯片 Docker 一键部署 Neo4j 最新版本教程
macos·docker·neo4j
我发在否14 小时前
Lua > Mac Mini M4安装openresty
macos·lua·openresty