0

2个图书馆有什么区别?哪一个更适合生产应用程序?为什么在安装时会有显着不同的依赖项集?

4

1 回答 1

2

只有一个libnotify库。我假设您询问的是 deb 包libnotify-binlibnotify-dev

如果是这样,区别很简单:带-dev后缀的库包包含库的开发文件,而带-bin后缀的包可能包含一些已编译的二进制文件和实用程序。要了解有关这些包内容的更多信息,请参阅devbin包的已安装文件列表。

当您使用c++标签时,我假设您需要这个库来从您的应用程序发送通知。在这种情况下,您应该使用libnotify-dev为 libnotify 提供 C API 的包。libnotify-bin包含notify-send更适合在 shell 脚本中使用的二进制文件。

这是使用该库的最小示例:

#include <libnotify/notify.h>

int main() 
{
    notify_init("Test");
    NotifyNotification* n = notify_notification_new ("title", "text", 0);
    notify_notification_set_timeout(n, 3000);
    if (!notify_notification_show(n, 0)) {
        return -1;
    }
    return 0;
}

安装libnotify-dev包并使用以下命令编译示例:

g++ test.cpp `pkg-config --cflags --libs libnotify`

然后运行结果文件以查看通知。

于 2021-05-18T04:25:17.970 回答