linux dbm数据库,Linux dbm遇到的一些问题
遇到的問(wèn)題一:gcc編譯老是 undefined reference to `dbm_open'
具體描述 :
gcc -I/user/include -L/user/lib -o dbm1 dbm1.c -lgdbm
這條語(yǔ)句老是出錯(cuò)。我通過(guò)deb包安裝了一次dbm,其文件分別在/usr/include 和/user/lib 中我將其包含進(jìn)去編譯出錯(cuò)。于是我嘗試自己下載源文件,自己編譯,
編譯好的文件分別在 /user/local/include 和/user/local/lib中,我將其包含進(jìn)去編譯,還是出現(xiàn)錯(cuò)誤。意識(shí)到問(wèn)題不在文件這。
真正的問(wèn)題是,如果用gdbm,還要兼容dbm或ndmb,編譯的時(shí)候要連接上gdbm_compat。使用下面這條命令,我通過(guò)了。
gcc -I/user/include -L/user/lib -o dbm1 dbm1.c -lgdbm -lgdbm_compat
如果是自己編譯文件,先./configure? 再make? 再make install 最后make install-compat(這個(gè)就是安裝那個(gè)擴(kuò)展)。這些閱讀下載的壓縮包里面的README文件便清楚了。
遇到的問(wèn)題二:找不到ndbm.h
具體描述: 通過(guò)deb包安裝gdbm之后,發(fā)現(xiàn)找不到所需要的ndbm.h頭文件。但是你會(huì)發(fā)現(xiàn)一個(gè)叫g(shù)dbm-ndbm.h的文件,你只需要把文件名改成ndbm.h就可以了,當(dāng)然需要一定權(quán)限。
sudo cp '/usr/include/gdbm-ndbm.h'? '/usr/include/ndbm.h'
這樣就OK了
本篇文章來(lái)源于 Linux公社網(wǎng)站()? 原文鏈接:
總結(jié)
以上是生活随笔為你收集整理的linux dbm数据库,Linux dbm遇到的一些问题的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: zookeeper 集群 + kafka
- 下一篇: 3991: [SDOI2015]寻宝游戏