Building on Unix
Prerequisites
OpenSSL is required for authentication or for SSL connections to MongoDB. Kerberos or LDAP support requires Cyrus SASL.
To install all optional dependencies on RedHat / Fedora: $ sudo yum install pkg-config openssl-devel cyrus-sasl-devel
On Debian / Ubuntu: $ sudo apt-get install pkg-config libssl-dev libsasl2-dev
On FreeBSD: $ su -c 'pkg install pkgconf openssl cyrus-sasl'
Building from a release tarball
Unless you intend on contributing to the mongo-c-driver, you will want to build from a release tarball.
The most recent release of libmongoc is 1.8.1 and can be downloaded here. The following snippet will download and extract the driver, and configure it:
$ wget https://github.com/mongodb/mongo-c-driver/releases/download/1.8.1/mongo-c-driver-1.8.1.tar.gz
$ tar xzf mongo-c-driver-1.8.1.tar.gz
$ cd mongo-c-driver-1.8.1
$ ./configure --disable-automatic-init-and-cleanup
亲测:
https://github.com/mongodb/mongo-c-driver/releases/download/1.8.1/mongo-c-driver-1.8.1.tar.gz 这个地址下载超慢
所以还是从 git 下载源码
Building from git
To build an unreleased version of the driver from git requires additional dependencies.
RedHat / Fedora: $ sudo yum install git gcc automake autoconf libtool
Debian / Ubuntu: $ sudo apt-get install git gcc automake autoconf libtool
FreeBSD: $ su -c 'pkg install git gcc automake autoconf libtool'
Once you have the dependencies installed, clone the repository and build the current master or a particular release tag:
$ git clone https://github.com/mongodb/mongo-c-driver.git
$ cd mongo-c-driver
$ git checkout x.y.z # To build a particular release
$ ./autogen.sh --with-libbson=bundled
$ make
$ sudo make install
1.
下载 mongo-c-driver-r1.6 源码:
https://github.com/mongodb/mongo-c-driver(GitHub驱动源码,这个 src/libbson 文件夹里面是空的,要单独下载)
下载 libbson-r1.6 源码:
https://github.com/mongodb/mongo-c-driver/tree/r1.6/src
2.
解压:
unzip mongo-c-driver-r1.6.zip
unzip libbson-r1.6.zip
3.
将 libbson 源码 拷贝 至 mongo-c-driver-r1.6/src/libbson 目录
4.
sudo yum install pkg-config openssl-devel cyrus-sasl-devel
./autogen.sh --with-libbson=bundled (得先安装 libtoll ,否则会报错。sudo yum install libtool*)
make
sudo make install
安装完成的库和头文件目录:
/usr/local/lib
/usr/local/include
API 用法详见:http://www.cnblogs.com/SZxiaochun/p/5848455.html
注意:
使用库的时候报错:
error while loading shared libraries: libevent-1.4.so.2: cannot open shared object file: No such file or directory
原因:
程序按照默认共享库路径找不到该共享库文件。
解决方法: