我收到了以下错误
' libwebsockets.h'找不到文件
但我已经使用命令
安装了libwebsocketsbrew install libwebsockets
如何解决此错误? 我想实现一个websocketserver,我需要这个。 如果我的代码只有以下行
#include <libwebsockets.h>
它给了我一个错误。
我试图用gcc foo.c
编译它
答案 0 :(得分:3)
您需要将适当的编译和链接标志传递给编译器,以便找到标头和库。
通常使用程序&#34; pkg-config&#34;来完成。要获取编译标志,请运行:
pkg-config libwebsockets --cflags
获取链接标志:
pkg-config libwebsockets --libs
如果在同一步骤中编译和链接,则需要将上述两个命令输出的标志传递给编译器。如果你有单独的编译和链接命令,你传递&#34; - cflags&#34;编译时输出,&#34; - libs&#34;链接期间的输出。
在您的情况下,您可以编译:
gcc $(pkg-config libwebsockets --cflags) foo.c $(pkg-config libwebsockets --libs)
$()
语法接受您在(
和)
之间放置的命令的输出,并将其放入您的内容中,就好像您输入了它一样。
你应该写一个小的构建脚本来为你做这件事。例如,在名为&#34; build&#34;的文件中。与&#34; foo.c&#34;:
在同一目录中#! /bin/sh
gcc $(pkg-config libwebsockets --cflags) foo.c $(pkg-config libwebsockets --libs)
使脚本可执行:
chmod +x build
然后只需称呼它:
./build