0

我正在尝试使用 fluent-bit的库 Api 编译我的 C 程序,但是缺少标头 fluent-bit.h 并且我不明白为什么。

我使用安装指南安装了 fluent-bit

这是我要测试的代码:

#include <fluent-bit.h>

int main()
{
    int i;
    int n;
    char tmp[256];
    flb_ctx_t *ctx;
    int in_ffd;
    int out_ffd;

    /* Initialize library */
    ctx = flb_create();
    if (!ctx) {
        exit(EXIT_FAILURE);
    }

    in_ffd = flb_input(ctx, "lib", NULL);
    flb_input_set(ctx, in_ffd, "tag", "test", NULL);

    out_ffd = flb_output(ctx, "stdout", NULL);
    flb_output_set(ctx, out_ffd, "match", "test", NULL);

    /* Start the background worker */
    flb_start(ctx);

    /* Push some data */
    for (i = 0; i < 100; i++) {
        n = snprintf(tmp, sizeof(tmp) - 1,
                     "[%f, {\"key\": \"val %i\"}]",
                     flb_time_now(), i);
        flb_lib_push(ctx, in_ffd, tmp, n);
    }
    flb_stop(ctx);

    /* Release Resources */
    flb_destroy(ctx);

    return 0;
}

这是我得到的错误:

hello.c:1:24: fatal error: fluent-bit.h: No such file or directory
 #include <fluent-bit.h>
                        ^
compilation terminated.
4

1 回答 1

0

问题解决了,我没有正确安装 fluent-bit 和 headers。这是问题所在:标题丢失了,所以继续 cd /path/to/downloaded/fluent-bit-x.y.z/includes

然后使用

sudo cmake .
sudo make install

你会得到一个输出,说头文件已经安装在你的系统上。

为了确保 fluent-bit 也正确安装:

cd ..
sudo cmake .
sudo make install

您现在可以毫无问题地使用 fluent-bit API

于 2019-07-24T13:09:32.987 回答