use*_*421 3 gcc mongodb mongo-c-driver
我从官方网站上获得了mongo-c-driver,如下:
$git https://github.com/mongodb/mongo-c-driver.git
$cd mongo-c-driver
$./autogen.sh
$ make
$ sudo make install
Deal.c:2:19: fatal error: mongo.h: No such file or directory
Run Code Online (Sandbox Code Playgroud)
但是,当我运行名为"Deal.c"的C文件时,如下所示:
gcc -o Deal Deal.c -l /usr/local/include -L /usr/local/lib -lmongoc
Error:#include "mongo.h"
^ compilation terminated.
Run Code Online (Sandbox Code Playgroud)
我的系统版本:是Ubuntu 13.10
小智 8
您似乎缺少标题的路径以及库的位置.一种选择是安装到您的平台使用的相同前缀,例如:
./configure --prefix=/usr --libdir=/usr/lib64
Run Code Online (Sandbox Code Playgroud)
如果这不是一个选项,那么您可以更新您的Makefile以包含正确的库并包含路径:
gcc Deal.c -L/usr/local/lib -I/usr/local/include/libmongoc-1.0 -I/usr/local/include/libbson-1.0 -lmongoc-1.0 -lbson-1.0
Run Code Online (Sandbox Code Playgroud)
这通常会pkg-config在Unix类似的系统上自动完成,如下所示:
gcc Deal.c $(pkg-config --cflags --libs libmongoc-1.0)
Run Code Online (Sandbox Code Playgroud)
但是,如果安装到非标准路径(例如/ usr/local),则需要pkg-config知道在哪里找到该libmongoc-1.0.pc文件,例如:
PKG_CONFIG_PATH=/usr/local/lib/pkgconfig gcc Deal.c $(pkg-config --cflags --libs libmongoc-1.0)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6435 次 |
| 最近记录: |