如何编译 Unity 范围?(或者:如何在 Vala 中使用库?)

如何编译 Unity 范围?(或者:如何在 Vala 中使用库?)

我目前正在学习 Vala,在学习了基础知识后,我想做一个真正的小项目,让它变得更有趣。为此,我认为为 Unity 创建一个范围是完美的(在本例中,是音乐镜头的范围来搜索 MPD)。

但是,关于如何做这样的事情的文档很少。因此,我希望能够先在 Ask Ubuntu 的帮助下自己研究一下,然后整理出一个关于在 Vala 中编写作用域的教程。

我目前遇到的问题是如何编译范围以便能够使用 Unity 的库。我已经安装了 libunity-dev(这是必要的吗?),但是,当我尝试编译它时,出现以下错误:

$ valac --pkg libunity ./unity-scope-mpd.vala
error: Package `libunity' not found in specified Vala API directories or GObject-Introspection GIR directories
Compilation failed: 1 error(s), 0 warning(s)

(注意:我有使用 Java 和 PHP 编程的经验,但没有用前者做过大型项目,因此请在回答中考虑到这一点。)

答案1

正在做

 dpkg -L libunity-dev

显示该vapi文件实际上名为unity.vapi。你试过

valac --pkg unity ./unity-scope-mpd.vala

一般来说,软件包名称应该等于 pkg-config 名称。您可以执行以下命令ls /usr/lib/pkgconfig查看是否有unity.pc

相关内容