libnotify dev 与 libnotify bin 有什么区别

what are the differences in libnotify dev versus libnotify bin

2 个库有什么区别?哪一个更适合生产应用程序? 为什么安装时依赖项集明显不同?

只有一个libnotify library. I assume you're asking about the deb packages libnotify-bin and libnotify-dev

如果是这样,区别很简单:-dev后缀的库包包含development files for the library, while packages with -bin suffix may contain some compiled binaries and utilities. To learn more about the contents of these packages, see the list of installed files for dev and bin个包。

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

这是使用库的最小示例:

#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`

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