gcc和liboauth - 链接器无法找到oauth.h

时间:2015-02-02 12:31:17

标签: c gcc oauth linker

我尝试将liboauth与C程序一起使用,使用gcc作为我的编译器,无论我尝试了什么,我都会一直收到错误" ld:找不到-loauth&的库#34;和" clang:错误:链接器命令失败,退出代码为1"。

我通过" #include< oauth.h>"包括标题,我最近对gcc的调用如下所示:

gcc -Wall -lcurl -loauth -I /usr/local/include -v -o api api.c

现在,oauth.h确实存在于/ usr / local / include中,并且/ usr / local / bin中有一些liboauth文件(包括liboauth.a),我假设它们被放置了那时我运行安装。我承认我不太熟悉gcc并编译非平凡的C程序,但我能够在几分钟内让libcurl进行全新下载。我无法弄清楚liboauth会发生什么。

提前致谢

1 个答案:

答案 0 :(得分:2)

如果确定 liboauth位于/ usr / local / bin中

gcc -Wall -L/usr/local/bin -I /usr/local/include -v -o api api.c -lcurl -loauth

最好将库放在命令的末尾,因为它们有一些重要的东西(它们可能相互依赖等)。

顺便说一句,你的库在/ usr / local / bin中很奇怪,因为 libraries 几乎总是存储在像/ usr / * / lib这样的路径中。