You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Mac OS上基于osquery开源代码构建osquery.app

构建Mac OS版osquery.app的完整步骤

官方默认构建流程只会生成osqueryd等二进制文件,要生成osquery.app bundle,需要在构建阶段启用打包配置,以下是完整步骤:

前置准备

确保你已经完成官方文档中的基础依赖安装(Xcode、Homebrew相关依赖),并且克隆了osquery源码仓库、拉取了所有子模块。

具体构建步骤

  1. 清理并初始化构建目录
    进入osquery源码根目录,清理旧构建缓存并创建新的构建目录:
rm -rf build && mkdir build && cd build
  1. 配置CMake构建参数
    运行CMake时添加打包相关参数,指定生成.app bundle:
cmake .. -G Xcode -DOSQUERY_BUILD_PACKAGES=ON -DOSQUERY_BUILD_DMG=OFF -DCMAKE_BUILD_TYPE=Release

参数说明:

  • DOSQUERY_BUILD_PACKAGES=ON:启用打包流程,触发.app的生成
  • DOSQUERY_BUILD_DMG=OFF:关闭DMG镜像生成,仅输出.app文件(如果需要DMG可改为ON)
  • CMAKE_BUILD_TYPE=Release:构建发布版本,优化性能与体积
  1. 执行构建
    可以选择以下两种方式之一执行构建:
  • 使用Xcodebuild构建指定目标:
    xcodebuild -project osquery.xcodeproj -target osquery -configuration Release build
    
  • 使用CMake命令构建:
    cmake --build . --target osquery --config Release
    
  1. 获取生成的.app文件
    构建完成后,osquery.app会生成在以下路径:
build/osquery/Release/osquery.app

可选:代码签名(用于分发)

如果需要将.app分发给其他用户,必须进行代码签名:

codesign --deep --force --sign "你的Apple开发者证书名称" build/osquery/Release/osquery.app

注意事项

  • 确保Xcode命令行工具已正确配置:xcode-select --switch /Applications/Xcode.app/Contents/Developer
  • 如果构建时出现依赖缺失,检查子模块是否拉取完整:git submodule update --init --recursive
  • 若遇到SDK版本相关错误,可在CMake命令中指定对应SDK路径,例如:
    cmake .. -G Xcode -DOSQUERY_BUILD_PACKAGES=ON -DCMAKE_OSX_SYSROOT=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX14.sdk -DCMAKE_BUILD_TYPE=Release
    

内容的提问来源于stack exchange,提问作者User0987

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.20 17:45:05