关于MacOS使用Homebrew的详细介绍

Homebrew 是 macOS(和 Linux)上最流行的包管理工具(Package Manager),用于快速安装、更新和管理各种开发工具、命令行程序、开源软件等。它类似于:

  • Ubuntu/Debian 的 apt
  • CentOS/RHEL 的 yum
  • Windows 的 Chocolatey 或 Scoop
Homebrew 的核心特点
  1. 简单易用:一条命令即可安装软件,如 brew install python
  2. 自动处理依赖:安装软件时,自动下载并安装所需的依赖库。
  3. 集中管理:所有软件安装在 /opt/homebrew(Apple Silicon)或 /usr/local(Intel),不会污染系统目录。
  4. 开源 & 社区驱动:拥有庞大的软件库(Formula),支持 6000+ 软件包。
  5. 支持 macOS & Linux:可以在 macOS 和 Linux(通过 Linuxbrew)上运行。

一、为什么要安装 Homebrew?

1. 方便安装开发工具

macOS 自带的命令行工具较少,而 Homebrew 可以一键安装:

  • 编程语言:Python、Node.js、Ruby、Go、Rust
  • 数据库:MySQL、PostgreSQL、Redis、MongoDB
  • 开发工具:Git、Docker、VSCode、Neovim、CMake
  • 深度学习工具:TensorFlow、PyTorch、CUDA(Intel Mac)

示例:

brew install python       # 安装最新 Python
brew install git          # 安装 Git
brew install node        # 安装 Node.js
2. 避免手动编译软件的麻烦
  • 传统方式安装软件需要:
    • 下载源码 → ./configure → make → make install
    • 可能遇到依赖问题,手动解决很麻烦。
  • Homebrew 自动处理依赖,例如:
brew install ffmpeg  # 自动安装依赖库(如 x264、libvpx)

 

3. 保持软件最新
  • macOS 自带的 pythongit 等版本较旧。
  • Homebrew 可以轻松升级:
brew upgrade python  # 升级 Python
brew upgrade --all   # 升级所有软件
4. 卸载干净
  • 手动安装的软件可能残留文件,而 Homebrew 可以彻底卸载
brew uninstall python  # 完全删除 Python 及其依赖
5. 管理多个版本
  • 使用 brew 可以安装多个版本并切换:
brew install python@3.9   # 安装 Python 3.9
brew install python@3.10  # 安装 Python 3.10
brew link --overwrite python@3.9  # 切换版本

6. Homebrew 的基本使用:

命令用途
brew install <package>安装软件
brew uninstall <package>卸载软件
brew upgrade <package>升级软件
brew list查看已安装的软件
brew search <keyword>搜索软件
brew info <package>查看软件信息
brew doctor检查 Homebrew 健康状况
brew cleanup清理旧版本软件

二、在 macOS 上检查是否已安装 Homebrew 

方法 1:终端命令检查

which brew
  • 已安装:会显示 Homebrew 的安装路径,如 /opt/homebrew/bin/brew(M1/M2芯片)或 /usr/local/bin/brew(Intel芯片)
  • 未安装:没有任何输出或显示 brew not found

方法 2:查看版本信息

brew --version
  • 已安装:会显示 Homebrew 的版本号,例如:text
  • 未安装:会显示 command not found: brew

 三、如何安装homebrew

        官网地址:Homebrew官网地址

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

安装完成后配置环境变量
  • Apple Silicon (M1/M2) Mac
    echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' >> ~/.zshrc
    source ~/.zshrc
  • Intel Mac
    echo 'eval "$(/usr/local/bin/brew shellenv)"' >> ~/.zshrc
    source ~/.zshrc

    💡 如果你使用 bash,请替换 .zshrc 为 .bash_profile 或 .bashrc

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/902209.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

最新扣子空间实操指南

一、首先要先获取到内部测试的邀请码&#xff0c; 我们先打开扣子空间官网&#xff1a;https://space.coze.cn/ 输入邀请码后进入该页面&#xff1a; 它这里支持文件上传&#xff0c;扩展里面有很多插件&#xff0c;页支持MCP各种插件. 探索模式有两种&#xff0c;一种是ai自…

ubuntu22.04安装dukto

1.添加源 sudo add-apt-repository ppa:xuzhen666/dukto2.进行更新和安装 sudo apt update sudo apt install dukto3.报错 $ sudo apt install dukto 正在读取软件包列表... 完成 正在分析软件包的依赖关系树... 完成 正在读取状态信息... 完成 您也许需要…

Java编程基础(第四篇:字符串初次介绍)

前言 HelloWorld写的多了&#xff0c;语法熟悉一点了吧&#xff0c;其中有段代码还没介绍&#xff0c;它就是字符串 public class HelloWorld { public static void main(String[] args) { printBaby(); } static void printBaby() { System.out.print("baby"); } } …

安卓手机怎样配置数据加速

利用系统自带功能&#xff1a; 选择网络模式&#xff1a;进入手机 “设置”&#xff0c;找到 “网络” 或 “移动网络” 选项&#xff0c;点击 “高级设置”&#xff0c;选择合适的网络模式&#xff0c;如优先选择 4G 或 5G 网络&#xff0c;以获得更快的速度。开启网络加速功能…

Day3:个人中心页面布局前端项目uniapp壁纸实战

接下来我们来弄一下个人中心页面布局user.vue <template><view class"userLayout"><view class"userInfo"><view class"avatar"><image src"../../static/Kx.jpg" mode"aspectFill"></im…

线性回归之正则化(regularization)

文章目录 机器学习中的"防过拟合神器"&#xff1a;正则化全解析1. 正则化&#xff1a;不只是"规矩"那么简单1.1 鲁棒性案例说明 2. L1正则化&#xff1a;冷酷的特征选择器3. L2正则化&#xff1a;温柔的约束者4. L1 vs L2&#xff1a;兄弟间的较量5. 正则化…

mapbox基础,加载视频到地图

👨‍⚕️ 主页: gis分享者 👨‍⚕️ 感谢各位大佬 点赞👍 收藏⭐ 留言📝 加关注✅! 👨‍⚕️ 收录于专栏:mapbox 从入门到精通 文章目录 一、🍀前言1.1 ☘️mapboxgl.Map 地图对象1.2 ☘️mapboxgl.Map style属性1.3 ☘️raster 栅格图层 api二、🍀加载视频到…

Linux系统的远程终端登录、远程图形桌面访问、 X图形窗口访问

目录 一、配置Ubuntu系统的网络和用户 1、设置虚拟机网络为桥接模式 2.查看当前ip、子网掩码、网关 3.修改配置文件 二、远程终端登录Ubuntu 三、使用XShell远程连接 1、确保SSH服务已启动 2、检查SSH服务状态 3、获取树莓派IP地址 4、Xming安装好之后打开让它在后台…

多模态大语言模型arxiv论文略读(三十一)

From GPT-4 to Gemini and Beyond: Assessing the Landscape of MLLMs on Generalizability, Trustworthiness and Causality through Four Modalities ➡️ 论文标题&#xff1a;From GPT-4 to Gemini and Beyond: Assessing the Landscape of MLLMs on Generalizability, Tr…

基于Matlab求解矩阵电容等效容值

1需求 仿真测试8*10阶举证电容等效容值。 2模型搭建 2.1打开simscape 在打开simulink之后打开simscape库&#xff0c;Simscape库位置如下 2.2搭建模型 在库中寻找需要的元件搭建电路。 2.2.1基本元件 电阻电容电感等基础器件&#xff0c;搭建电路之后需要对其进行幅值&…

【C++】 —— 笔试刷题day_22

一、添加字符 题目解析 这道题&#xff0c;给定两个字符串A和B&#xff0c;字符串A的长度要小于B的长度&#xff1b; 现在我们要对A字符串添加字符&#xff0c;使得A字符串长度等于B字符串的长度&#xff0c;并且要求对应位置的字母尽量相等&#xff0c;然后求出来不相等的字符…

错误: 找不到或无法加载主类 HelloWorld,cmd窗口,java命令,提示

错误: 找不到或无法加载主类 HelloWorld 解决办法 检查classpath是否 .; 开头的

手撕LLM(五):从源码出发,探索多模态VL模型的推理全流程

前面我们分享了关于大语言模型的相关技术&#xff0c;包括前向推理、LoRa挂载、MoE模型、模型预训练等&#xff1b;后续还是会基于MiniMindLM模型继续分享关于大语言模型的SFT指令微调、LoRa微调、基于人类偏好的强化学习微调以及模型蒸馏相关的技术&#xff0c;请大家持续关注…

关于隔离2:ADC芯片

ADC可以称作是模拟芯片领域的明珠。作为一种关键器件&#xff0c;ADC设计难度大&#xff0c;专利墙高&#xff0c;所以国内一直处于追赶的状态。近年来&#xff0c;国产ADC发展极为迅速&#xff0c;逐渐在各项参数上赶上了国际主流水准。 模拟数字转换器ADC连接着现实模拟世界…

【MySQL】前缀索引、索引下推、访问方法,自适应哈希索引

最左前缀原则 对于INDEX(name, age)来说最左前缀可以是联合索引的最左N个字段, 也可以是字符串索引的最左M个字符。 SELECT * FROM t WHERE name LIKE 张%其效果和单独创建一个INDEX(name)的效果是一样的若通过调整索引字段的顺序, 可以少维护一个索引树, 那么这个顺序就是需要…

【Oracle专栏】Oracle中的虚拟列

Oracle相关文档&#xff0c;希望互相学习&#xff0c;共同进步 风123456789&#xff5e;-CSDN博客 1.背景 在EXP方式导出时&#xff0c;发现 出现如下提示 EXP-00107: virtual column 不支持&#xff0c;因此采用expdp方式导出。于是本文针对oracle虚拟列进行简单介绍。 2. 相…

Nacos深度剖析与实践应用之-配置中心

&#x1f4f9; 简介 在微服务架构中&#xff0c;配置管理是至关重要的基础能力。Nacos作为阿里巴巴开源的一体化动态服务发现、配置管理和服务管理平台&#xff0c;其配置中心模块提供了统一配置管理、动态配置推送、多环境支持等核心能力。相比传统配置文件方式&#xff0c;Na…

gma 2.1.4 (2025.04.18) | GmaGIS V0.0.1a3 更新日志

安装 gma 2.1.4 pip install gma2.1.4网盘下载&#xff1a; 链接&#xff1a;https://pan.baidu.com/s/1P0nmZUPMJaPEmYgixoL2QQ?pwd1pc8 提取码&#xff1a;1pc8 注意&#xff1a;此版本没有Linux版&#xff01; 编译gma的Linux虚拟机没有时间修复&#xff0c;本期Linux版继…

在 Node.js 中设置响应的 MIME 类型

在 Node.js 中设置响应的 MIME 类型是为了让浏览器正确解析服务器返回的内容&#xff0c;比如 HTML、CSS、图片、JSON 等。我们通常通过设置响应头中的 Content-Type 字段来完成。 ✅ 一、什么是 MIME 类型&#xff08;Content-Type&#xff09;&#xff1f; MIME&#xff08;…

SRS transcode支持 h264_nvenc 硬件解码方案

文章目录 SRS transcode支持 h264_nvenc 硬件解码方案1、修改文件2、重新编译3、使用 SRS transcode支持 h264_nvenc 硬件解码方案 SRS 是开源的流媒体服务&#xff0c;但在使用 GPU 服务器时&#xff0c;想要通过硬件加速&#xff0c;目前官方是不支持的&#xff0c;所以简单…