6

尝试运行一个简单的 nanomsg 文件,从这里的第一个文件开始:https ://github.com/dysinger/nanomsg-examples

将 nanomsg 安装到/usr/local/lib/nanomsg-0.2-alpha. 然sudo ./configure,,,如指示所说sudo make check_ 所有测试通过。sudo make installsudo ldconfig

当我运行它说 libc.h 没有找到:

$ gcc pipeline.c /usr/local/lib/libnanomsg.a -o pipeline
pipeline.c:2:18: fatal error: libc.h: No such file or directory
compilation terminated.

什么是 libc.h?自大学以来,我没有做过任何 C 编程。它是 nanomsg 还是 C 库的一部分?

$ which gcc
/usr/bin/gcc
Ubuntu 12.04.4 LTS
4

2 回答 2

8

Libc.h 仅包含一小部分包含列表。要编译 nanomsg 样本,它足以(src):

更换:

#include <libc.h> 

#include <unistd.h>
#include <string.h>
#include <pthread.h>

我使用这个 cmd 进行静态编译:

gcc -pthread bus.c ../nanomsg/.libs/libnanomsg.a -o test -lanl

注意 -pthread 和 -lanl 在行尾。

于 2014-12-05T18:53:37.567 回答
1

try the following:

$ sudo updatedb
$ locate libc.h

find the path where libc.h located. eg, if your libc.h is /usr/local/include

gcc -I/usr/local/include pipeline.c /usr/local/lib/libnanomsg.a -o pipeline
于 2014-02-14T08:17:11.637 回答