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

如何单独构建osqueryi二进制文件以适配应用集成?

单独构建轻量化osqueryi的方法

osquery的构建系统支持单独编译osqueryi,早期版本确实能生成远小于osqueryd的独立二进制文件,以下是具体操作步骤:

1. 准备基础构建环境

先搞定osquery的基础构建依赖——CMake、C++编译器(GCC/Clang)、Python这些是必须的,不用管osqueryd相关的服务类依赖,能省不少事。

2. 拉取指定版本的osquery源码

要拿到早期轻量化的osqueryi,建议切换到v4.x或更早的tag(这些版本里两者体积差更明显):

git clone https://github.com/osquery/osquery.git
cd osquery
git checkout tags/v4.9.0  # 这里举个例子,你可以选更早的合适版本

3. 仅编译osqueryi目标

用CMake指定跳过osqueryd、扩展和测试代码,只构建osqueryi:

mkdir build && cd build
cmake .. -DOSQUERY_BUILD_TESTS=OFF -DOSQUERY_BUILD_DAEMON=OFF -DOSQUERY_BUILD_EXTENSIONS=OFF
make osqueryi -j$(nproc)

参数说明:

  • -DOSQUERY_BUILD_DAEMON=OFF:直接禁用osqueryd守护进程的构建
  • -DOSQUERY_BUILD_EXTENSIONS=OFF:关闭扩展模块,进一步压缩体积
  • -DOSQUERY_BUILD_TESTS=OFF:跳过测试代码,加快编译速度

4. 检查结果

编译完成后,build/osqueryi就是你要的独立二进制文件,用下面的命令查看体积:

ls -lh build/osqueryi

早期版本的这个文件体积基本能控制在30MB左右,符合你的需求。

额外的体积优化技巧

  • 开启Release编译:CMake里添加-DCMAKE_BUILD_TYPE=Release,既能压缩体积又能提升性能
  • 剥离调试符号:编译完成后执行strip build/osqueryi,能进一步减小文件大小

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.14 14:16:04