linux下使用BerkeleyDB

BerkeleyDB是一款优秀的内存数据库,用它我们可以解决内存空间不足,比如需要一个大于内存空间的队列。也可以解决数据持久化的问题。

 

一,下载,到oracle官方网站,下载BerkeleyDB的源代码。这里给出1.5的链接:http://www.oracle.com/technetwork/database/berkeleydb/downloads/index.html。

 

二,编译。 源代码解压缩后,在终端下进入build_unix目录,执行如下命令:

                 ../dist/configure --enable-cxx --enable-stl

                 make

         务必在build_unix目录下执行,如果第一条命令执行失败,请使用 chmod +x ../dist/configure为configure文件增加可执行权限。

         其中--enable-cxx选项表示在生成C语言接口的同时,也生成C++语言接口。--enable-stl表示增加对模板类库的支持。

三,安装。 在build_unix目录下执行如下命令

                make install

        将会把include文件和lib文件安装/usr/local/BerkeleyDB.1.5下

 

四,指明动态链接库路径(ubuntu下)

                 在/etc/ld.so.conf.d目录下,创建BerkeleyDB-1-5.conf文件,在文件里加上如下一行

 

                 /usr/local/BerkeleyDB.1.5/lib

 

                 在终端里执行 ldconfig更新。这样就可以运行依赖于BerkeleyDB库的程序了。

五,测试

 

         编写test.c

#include <stdio.h> #include <db.h> int main() { DB* dbp; u_int32_t flags; int ret; ret = db_create(&dbp, NULL, 0); if (ret != 0) { /* 错误处理*/ } flags = DB_CREATE; ret = dbp->open(dbp, NULL, "my_db.db", NULL, DB_BTREE, flags, 0); if (ret != 0) { /*错误处理*/ } if (dbp != NULL) { dbp->close(dbp, 0); } return 0; }

 

                采用如下命令编译 :

 

                           gcc test.c -o test -ldb -L/usr/local/BerkeleyDB.1.5/lib -I/usr/local/BerkeleyDB.1.5/include

               运行:

                           ./test

 

 

你可能感兴趣的:(linux,unix,null,Build,include,终端)