Homebrew 简介

Homebrew 是 macOS(和 Linux)上的一个开源软件包管理器,它简化了在命令行下安装、更新和卸载软件的过程。Homebrew 使得用户能够轻松访问并管理数千个开源软件包。

涉及到的主要名词

  • Formula: Homebrew 的核心概念之一,指的是每个软件包的描述文件。这些文件包含了如何下载、编译以及安装该软件的信息。
  • Bottle: 预编译好的二进制文件,允许用户跳过编译步骤直接安装软件。
  • Cask: 扩展了 Homebrew 的功能,允许通过 Homebrew 安装图形界面应用程序(GUI Apps),如 Google Chrome 或 Visual Studio Code。
  • Tap: 第三方仓库,允许用户添加额外的软件源来扩展 Homebrew 可用的软件包集合。
  • Cellar : Homebrew 默认将所有安装的软件存储在此目录下,路径通常为 /usr/local/Cellar(对于 Intel Mac)或 /opt/homebrew/Cellar(对于 Apple Silicon Mac)。

Homebrew 使用方法

安装 Homebrew

首先确保你已经安装了 Xcode Command Line Tools:

lua 复制代码
bash
深色版本
xcode-select --install

然后,在终端中运行以下命令来安装 Homebrew:

bash 复制代码
bash
深色版本
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

根据提示完成安装过程。

基本命令

  • 搜索软件包 :brew search <package_name>

  • 查看软件包信息 :brew info <package_name>

  • 安装软件包:

    • 命令行工具:brew install <package_name>
    • GUI 应用程序:brew install --cask <app_name>
  • 列出已安装的软件包 :brew list

  • 更新软件包:

    • 更新 brew 自身:brew update
    • 升级所有已安装的软件包:brew upgrade
    • 升级单个软件包:brew upgrade <package_name>
  • 卸载软件包:

    • 命令行工具:brew uninstall <package_name>
    • GUI 应用程序:brew uninstall --cask <app_name>
  • 清理旧版本 :brew cleanup


安装与卸载 App 示例

安装 VSCode

css 复制代码
bash
深色版本
brew install --cask visual-studio-code

卸载 VSCode

css 复制代码
bash
深色版本
brew uninstall --cask visual-studio-code

安装 wget

复制代码
bash
深色版本
brew install wget

卸载 wget

复制代码
bash
深色版本
brew uninstall wget

常见问题及解决方案

  1. 权限问题

    • 如果遇到权限相关的错误,请尝试使用 sudo 来执行命令,不过大多数情况下 Homebrew 不需要这样做,因为它的默认安装位置对当前用户是可写的。
  2. Cask 已被禁用

    • 如之前提到的例子,如果某个 Cask 被标记为 "discontinued upstream",这意味着该应用已经被其开发者停止维护,你需要寻找替代品或手动安装。
  3. 无法连接到 GitHub

    • Homebrew 默认从 GitHub 下载软件包。如果你所在的网络环境对 GitHub 访问不稳定,可以考虑更换镜像源,比如中科大的镜像源:

      arduino 复制代码
      bash
      深色版本
      git -C "$(brew --repo)" remote set-url origin https://mirrors.ustc.edu.cn/brew.git
  4. 软件包冲突

    • 当两个软件包依赖于不同版本的同一个库时可能会发生冲突。解决办法通常是调整依赖关系或者寻找兼容版本。
  5. 系统不兼容

    • 对于一些较新的或较老的 macOS 版本,某些软件包可能不再支持。检查软件包的兼容性要求,并确保你的系统满足这些条件。
相关推荐
ManageEngine卓豪11 小时前
企业 Mac终端如何统一管控?配置、补丁与应用的落地框架
macos·mdm·uem·终端管理系统
黑化旺仔16 小时前
【OC】Runtime:类元数据、加载初始化与消息派发
开发语言·macos·ios·objective-c
Web3&Basketball2 天前
Meta Muse 816B 实测:两台 Mac 本地跑通
macos·大模型·mac·本地部署·moe·显存优化·meta muse
DevLoom_2 天前
macOS 27 升级翻车怎么降级?不用终端,2 种方案实测回退旧系统
macos·macos27·mac系统降级·macos安装盘·mac使用技巧
向着光芒的女孩2 天前
【Mac】腾讯视频会议在Mac电脑屏幕共享失败解决方案
macos
あ-3 天前
mac dbeaver安装后显示数据包损坏
macos
钱栈up3 天前
从 macOS 切回 Windows,我用 5 个免费工具把 80% 操作习惯搬了回来
windows·macos·策略模式
9144062323 天前
mac Git 账户切换问题
git·macos
铁锚3 天前
清理macos系统DS_Store文件的sh脚本
macos
Hello_Pyhx3 天前
CrossPaste 跨系统剪贴板配置:按发现、配对、同步逐层排查
macos·电脑