[英]openLdap BerkleyDB compiling problems
我試圖用BerkleyDB編譯openLDAP,但每次收到此消息時,我都會得到:
版:
BerleyDB:db-6.1.23
openLDAP:openldap-2.4.40
1.)首先編譯BerkleyDB
../dist/configure --prefix = / products / db-6.1.23
符號鏈接:
BerkleyDB-> db-6.1.23
2.)要編譯openLDAP
首先設置PATH:
CPPFLAGS =“-I / products / BerkleyDB / include” LDFLAGS =“-L / products / BerkleyDB / lib -L / products / BerkleyDB / lib -R / products / BerkleyDB / lib” LD_LIBRARY_PATH =“ / products / BerkleyDB / lib”導出CPPFLAGS LD_LIBRARY_PATH LDFLAGS
然后:
./configure --prefix = /產品/openldap-2.4.40
.....檢查BDB / HDB后端是否支持Berkeley DB版本...否配置:錯誤:BerkeleyDB版本與BDB / HDB后端不兼容
有任何想法嗎?!
Error: BerkeleyDB version incompatible with BDB/HDB backends
這意味着您需要升級Berkeley數據庫,因為OpenLDAP支持數據庫版本> = 4.4。
http://thompsonng.blogspot.com/2014/06/ldap-installing-openldap.html
由於6.0.20中的許可證從BSD更改為AGPL。 搜索“ Berkeley DB許可證更改”以找到有關此內容的文章(我只能發布2個鏈接,下面的鏈接提供的信息更多)。
霍華德·朱(Howard Chu)表示,此更改違反了伯克利(Berkeley DB)許可,使用伯克利(Berkeley)DB 6.0或更高版本在沒有商業許可的情況下運行LDAP服務器: http : //www.openldap.org/lists/openldap-technical/201309/ msg00116.html
Howard在該消息中指出,使用6.0或更高版本並不比使用5.3更好。
結果,OpenLDAP開發人員有意添加了對DB 6.0.20或更高版本的檢查: http : //www.openldap.org/its/index.cgi/Build?id= 7890;selectid=7890
當然,一段時間以來,OpenLDAP開發人員一直期望對Berkeley DB許可進行更改,並開發了自己的數據庫引擎LMDB,該引擎已被以前使用Berkeley DB的許多開源項目所采用。 自然,OpenLDAP具有此數據庫引擎的后端back_mdb。
所以:
如果您已有使用back_bdb或back_hdb(都使用Berkeley DB作為數據庫庫)的OpenLDAP數據庫,請使用Berkeley DB 5.3進行編譯,並計划將來遷移到back_mdb
如果您要在商業產品中交付OpenLDAP,並且要求Berkeley DB 6.x帶有(back_bdb,back_hdb),請從Oracle獲得商業許可或交付DB 5.3(並計划進行遷移)。
如果您只是在尋找最可靠,性能最佳的OpenLDAP本地存儲后端,則應該使用back_mdb
(順便說一句,由於許可證更改,許多linux發行版仍交付5.3,而不會交付6.x)
sed -i '/6.0.20/ a\\t__db_version_compat' configure
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.