【问题标题】:Vala: using a library won't work: taglib, tag_c.h not foundVala:使用库不起作用:未找到 taglib、tag_c.h
【发布时间】:2019-06-15 09:23:39
【问题描述】:

所以我正在修补使用 taglib 库的基本操作系统应用程序。目前我将库安装到'/usr/include/taglib/',但是当我尝试使用sudo ninja install 构建我的应用程序时,它说它在我的应用程序的编译c 代码中找不到'tag_c.h' 文件。然而,这个'tag_c.h' 文件可以在上面的目录中找到。

我的介子文件的重要部分如下所示:

dependencies = [
    dependency('gio-unix-2.0', version: '>=2.20'),
    dependency('granite'),
    dependency('taglib_c')
]
...
executable(
    meson.project_name(),
    code_files,
    dependencies: dependencies,
    install: true
)

当我删除实际使用 TagLib 库的代码行时,我在构建应用程序时没有遇到任何错误:

 TagLib.File f = new TagLib.File(path);

所以也许这意味着它找到了 vapi,但找不到它的 c 代码?

首先,我该如何解决这个问题?

其次,这只是我机器上的问题吗?我如何确保安装我的应用程序的其他人也通过介子构建它来安装 taglib 并让它立即工作?

【问题讨论】:

    标签: c linux dependencies vala meson-build


    【解决方案1】:

    elementary OS 基于 Debian/Ubuntu,所以我认为您还需要安装 libtagc0-dev。这包括相关的 pkg-config 文件和 C 头文件以使用 TagLib 的 C 接口。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-09-21
      • 1970-01-01
      • 1970-01-01
      • 2018-09-12
      • 1970-01-01
      • 2011-12-25
      • 2023-03-14
      相关资源
      最近更新 更多