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

如何获取PipeWire版本及在C/C++代码中获取其库版本用于日志

查询PipeWire版本及在C/C++中获取库版本信息

一、命令行查询PipeWire版本

有几种快速查询方式:

  • 直接查看PipeWire二进制程序版本:
pipewire --version

输出示例:pipewire 0.3.79

  • 通过PipeWire CLI工具查看服务端版本:
pw-cli info | grep "pipewire-version"

输出示例:pipewire-version: '0.3.79'

  • 使用pkg-config查询已安装的库版本:
pkg-config --modversion pipewire

二、C/C++代码中获取PipeWire版本并写入日志

PipeWire在头文件中提供了预定义宏和API函数,可直接获取版本信息:

1. 可用的版本相关宏与函数

在<pipewire/pipewire.h>中定义了:

  • PIPEWIRE_VERSION:完整版本字符串(如"0.3.79")
  • PIPEWIRE_MAJOR/PIPEWIRE_MINOR/PIPEWIRE_MICRO:分拆的主、次、补丁版本号
  • pw_get_version():返回完整版本字符串的API函数

2. 示例代码

#include <stdio.h>
#include <pipewire/pipewire.h>

int main() {
    // 初始化PipeWire(若仅查询版本可跳过,但初始化是使用PipeWire API的规范操作)
    pw_init(NULL, NULL);

    // 获取版本信息
    const char* full_version = pw_get_version();
    int major = PIPEWIRE_MAJOR;
    int minor = PIPEWIRE_MINOR;
    int micro = PIPEWIRE_MICRO;

    // 写入日志(此处用printf模拟,实际项目替换为你的日志函数即可)
    printf("[PipeWire Version] 完整版本: %s | 主版本: %d, 次版本: %d, 补丁版本: %d\n",
           full_version, major, minor, micro);

    pw_deinit();
    return 0;
}

3. 编译命令

编译时需链接PipeWire库,用pkg-config自动处理依赖:

gcc -o pipewire_version_demo pipewire_version_demo.c $(pkg-config --cflags --libs pipewire)

运行后输出示例:

[PipeWire Version] 完整版本: 0.3.79 | 主版本: 0, 次版本: 3, 补丁版本: 79

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.12 00:44:58