Strawberry音乐播放器在macOS系统下的Homebrew编译指南
2025-06-27 02:20:14作者:龚格成
环境准备
在macOS系统上使用Homebrew编译Strawberry音乐播放器前,需要确保系统环境配置正确。首先需要安装Xcode命令行工具和Homebrew包管理器:
-
安装Xcode命令行工具:
xcode-select --install -
安装Homebrew:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
依赖安装
Strawberry音乐播放器依赖于多个开发库和框架,需要通过Homebrew安装以下软件包:
brew install pkg-config cmake ninja meson bison flex wget create-dmg gettext boost protobuf protobuf-c
brew install glib glib-openssl glib-networking gdk-pixbuf gobject-introspection orc
brew install libffi openssl sqlite fftw libmtp libplist libxml2 libsoup
brew install libogg libvorbis flac wavpack opus speex mpg123 lame twolame taglib chromaprint libebur128 libbs2b libcdio libopenmpt faad2 faac fdk-aac musepack game-music-emu
brew install qt6 gstreamer
环境变量配置
为确保编译过程中能够正确找到相关库文件,需要设置以下环境变量:
export GIO_EXTRA_MODULES=$(brew --prefix)/lib/gio/modules
export GST_PLUGIN_SCANNER=$(brew --prefix)/opt/gstreamer/libexec/gstreamer-1.0/gst-plugin-scanner
export GST_PLUGIN_PATH=$(brew --prefix)/lib/gstreamer-1.0
源码获取与编译准备
-
创建并进入构建目录:
mkdir -p ~/build cd ~/build -
克隆Strawberry源码仓库:
git clone --recursive https://github.com/strawberrymusicplayer/strawberry cd strawberry mkdir build cd build
编译配置
根据处理器架构不同,配置参数略有差异:
Intel x86_64架构
cmake .. -DCMAKE_BUILD_TYPE=Release \
-DCMAKE_PREFIX_PATH=$(brew --prefix)/opt/qt6/lib/cmake \
-DBUILD_WITH_QT6=ON \
-DUSE_BUNDLE=ON \
-DENABLE_SPARKLE=OFF \
-DICU_ROOT=$(brew --prefix)/opt/icu4c \
-DPROTOBUF_INCLUDE_DIRS=$(brew --prefix)/include \
-DENABLE_DBUS=OFF
Apple Silicon架构
cmake .. -DCMAKE_BUILD_TYPE=Release \
-DCMAKE_PREFIX_PATH=$(brew --prefix)/opt/qt6/lib/cmake \
-DBUILD_WITH_QT6=ON \
-DUSE_BUNDLE=ON \
-DENABLE_SPARKLE=OFF \
-DICU_ROOT=$(brew --prefix)/opt/icu4c \
-DPROTOBUF_INCLUDE_DIRS=$(brew --prefix)/include
编译与安装
执行以下命令开始编译和安装:
make -j 4
make install
问题修复
编译完成后,需要移除一些可能导致问题的插件:
sudo rm -rf $(brew --prefix)/opt/qt6/share/qt/plugins/virtualkeyboard \
$(brew --prefix)/opt/qt6/share/qt/plugins/platforminputcontexts
sudo rm -f $(brew --prefix)/Cellar/qt/*/share/qt/plugins/imageformats/libqpdf.dylib
手动文件复制
由于运行时依赖关系,需要手动复制libsoup库:
mkdir -p strawberry.app/Contents/Frameworks
cp $(brew --prefix)/lib/libsoup-3.0.0.dylib strawberry.app/Contents/Frameworks/
应用部署
完成上述步骤后,可以执行部署命令:
make deploy
部署验证
验证所有库文件是否正确部署:
make deploycheck
创建安装包
最后,可以创建DMG安装包:
make dmg
安装说明
生成的DMG文件可以直接拖拽安装到Applications目录,或者手动将strawberry.app复制到/Applications/目录下。
注意事项
- 使用Homebrew编译可能存在部分gstreamer插件缺失的问题
- 官方不提供对Homebrew编译方式的技术支持
- 建议考虑使用官方提供的签名二进制版本以获得最佳体验
登录后查看全文
热门项目推荐
相关项目推荐
GLM-5智谱 AI 正式发布 GLM-5,旨在应对复杂系统工程和长时域智能体任务。Jinja00
GLM-5.1GLM-5.1是智谱迄今最智能的旗舰模型,也是目前全球最强的开源模型。GLM-5.1大大提高了代码能力,在完成长程任务方面提升尤为显著。和此前分钟级交互的模型不同,它能够在一次任务中独立、持续工作超过8小时,期间自主规划、执行、自我进化,最终交付完整的工程级成果。Jinja00
LongCat-AudioDiT-1BLongCat-AudioDiT 是一款基于扩散模型的文本转语音(TTS)模型,代表了当前该领域的最高水平(SOTA),它直接在波形潜空间中进行操作。00- QQwen3.5-397B-A17BQwen3.5 实现了重大飞跃,整合了多模态学习、架构效率、强化学习规模以及全球可访问性等方面的突破性进展,旨在为开发者和企业赋予前所未有的能力与效率。Jinja00
HY-Embodied-0.5这是一套专为现实世界具身智能打造的基础模型。该系列模型采用创新的混合Transformer(Mixture-of-Transformers, MoT) 架构,通过潜在令牌实现模态特异性计算,显著提升了细粒度感知能力。Jinja00
FreeSql功能强大的对象关系映射(O/RM)组件,支持 .NET Core 2.1+、.NET Framework 4.0+、Xamarin 以及 AOT。C#00
最新内容推荐
项目优选
收起
deepin linux kernel
C
27
14
OpenHarmony documentation | OpenHarmony开发者文档
Dockerfile
659
4.26 K
Ascend Extension for PyTorch
Python
503
608
本项目是CANN提供的数学类基础计算算子库,实现网络在NPU上加速计算。
C++
939
862
Oohos_react_native
React Native鸿蒙化仓库
JavaScript
334
378
openEuler内核是openEuler操作系统的核心,既是系统性能与稳定性的基石,也是连接处理器、设备与服务的桥梁。
C
390
285
AscendNPU-IR是基于MLIR(Multi-Level Intermediate Representation)构建的,面向昇腾亲和算子编译时使用的中间表示,提供昇腾完备表达能力,通过编译优化提升昇腾AI处理器计算效率,支持通过生态框架使能昇腾AI处理器与深度调优
C++
123
195
openGauss kernel ~ openGauss is an open source relational database management system
C++
180
258
🎉 (RuoYi)官方仓库 基于SpringBoot,Spring Security,JWT,Vue3 & Vite、Element Plus 的前后端分离权限管理系统
Vue
1.54 K
892
昇腾LLM分布式训练框架
Python
142
168