Go to this link and download Berkeley DB XML. Version used in this guide is "6.0.17". Once the download complete, unzip the file.
[rozaydin@RO Tutorials]$ ls
dbxml-6.0.17.tar.gz
[rozaydin@RO Tutorials]$ tar -xzf dbxml-6.0.17.tar.gz
[rozaydin@RO Tutorials]$ ls
dbxml-6.0.17 dbxml-6.0.17.tar.gz
[rozaydin@RO Tutorials]$ cd dbxml-6.0.17/
[rozaydin@RO dbxml-6.0.17]$ ls
buildall.sh db-6.1.19 dbxml README xerces-c-src xqilla
[rozaydin@RO dbxml-6.0.17]$
DB XML uses XQilla which is an XQuery and XPath 2 library implemented on top of the Xerces-C. DB XML requires Berkeley DB as well. So before using it we need to install each of the following dependencies in the following order;
Build and install Berkeley-DB
Build and install Xerces
Build and install XQuilla
Build and install XML-DB
DB XML compilation failed to compile with java 8 switching to java version "1.7.0_72" compilation completed with no errors. Open a terminal switch to root user and set JAVA variables. (PLEASE note you need to use this same terminal for all commands listed below)
[rozaydin@RO dbxml-6.0.17]$ pwd
/home/rozaydin/Desktop/Tutorials/dbxml-6.0.17
[rozaydin@RO dbxml-6.0.17]$ su -
Password:
Last login: Wed Mar 4 12:19:38 EET 2015 on pts/0
[root@RO ~]# export JAVA_HOME=/usr/java/jdk1.7.0_72
[root@RO ~]# export PATH=$JAVA_HOME/bin:$PATH
[root@RO ~]# cd /home/rozaydin/Desktop/Tutorials/dbxml-6.0.17
[root@RO dbxml-6.0.17]#
Now proceed with building Berkeley DB with configure, make, make install use following commands;
[root@RO dbxml-6.0.17]# ls
buildall.sh db-6.1.19 dbxml README xerces-c-src xqilla
[root@RO dbxml-6.0.17]# cd db-6.1.19/
[root@RO db-6.1.19]# ls
build_android build_vxworks build_windows docs lang README test
build_unix build_wince dist examples LICENSE src util
[root@RO db-6.1.19]# cd build_unix/
[root@RO build_unix]# ../dist/configure --enable-cxx --enable-java
[root@RO build_unix]# make
[root@RO build_unix]# make install
When operation completes this will install Berkeley DB to /usr/local/BerkeleyDB.6.1 directory. Change directory back to where you unzipped XML DB.
[root@RO build_unix]# cd /usr/local/BerkeleyDB.6.1
[root@RO BerkeleyDB.6.1]# ls
bin docs include lib
[root@RO BerkeleyDB.6.1]# cd /home/rozaydin/Desktop/Tutorials/dbxml-6.0.17/
[root@RO dbxml-6.0.17]# pwd
/home/rozaydin/Desktop/Tutorials/dbxml-6.0.17
After this step proceed with building XERCES library.
[root@RO dbxml-6.0.17]# cd xerces-c-src/
[root@RO xerces-c-src]# ls
config CREDITS LICENSE NOTICE samples version.incl
config.h.in doc m4 projects scripts xerces-c.pc.in
configure INSTALL Makefile.am README src xerces-c.spec
configure.ac KEYS Makefile.in reconf tests
[root@RO xerces-c-src]# ./configure
[root@RO xerces-c-src]# make
[root@RO xerces-c-src]# make install
When operation completes this will install XERCES library to /usr/local/bin directory. You should see similar output as below:
test -z "/usr/local/bin" || /bin/mkdir -p "/usr/local/bin"
/bin/sh ../libtool --mode=install /bin/install -c CreateDOMDocument DOMCount DOMPrint EnumVal MemParse PParse PSVIWriter Redirect SAX2Count SAX2Print SAXCount SAXPrint SCMPrint SEnumVal StdInParse XInclude '/usr/local/bin'
libtool: install: /bin/install -c .libs/CreateDOMDocument /usr/local/bin/CreateDOMDocument
libtool: install: /bin/install -c .libs/DOMCount /usr/local/bin/DOMCount
libtool: install: /bin/install -c .libs/DOMPrint /usr/local/bin/DOMPrint
libtool: install: /bin/install -c .libs/EnumVal /usr/local/bin/EnumVal
libtool: install: /bin/install -c .libs/MemParse /usr/local/bin/MemParse
libtool: install: /bin/install -c .libs/PParse /usr/local/bin/PParse
libtool: install: /bin/install -c .libs/PSVIWriter /usr/local/bin/PSVIWriter
libtool: install: /bin/install -c .libs/Redirect /usr/local/bin/Redirect
libtool: install: /bin/install -c .libs/SAX2Count /usr/local/bin/SAX2Count
libtool: install: /bin/install -c .libs/SAX2Print /usr/local/bin/SAX2Print
libtool: install: /bin/install -c .libs/SAXCount /usr/local/bin/SAXCount
libtool: install: /bin/install -c .libs/SAXPrint /usr/local/bin/SAXPrint
libtool: install: /bin/install -c .libs/SCMPrint /usr/local/bin/SCMPrint
libtool: install: /bin/install -c .libs/SEnumVal /usr/local/bin/SEnumVal
libtool: install: /bin/install -c .libs/StdInParse /usr/local/bin/StdInParse
libtool: install: /bin/install -c .libs/XInclude /usr/local/bin/XInclude
After this step proceed building XQuilla library (PLEASE note that you need to provide the xerces-c-src directory using ABSOLUTE path not doing so will fail the compilation)
[root@RO xqilla]# ./configure --with-xerces=/home/rozaydin/Desktop/Tutorials/dbxml-6.0.17/xerces-c-src
[root@RO xqilla]# make
[root@RO xqilla]# make install
When operation completes this will install XQuilla library to /usr/local/lib directory.
The last step involves building XML DB in dbxml directory type below commands:
[root@RO dbxml]# pwd
/home/rozaydin/Desktop/Tutorials/dbxml-6.0.17/dbxml
[root@RO dbxml]# cd build_unix/
[root@RO build_unix]# ../configure --enable-java --with-berkeleydb=/usr/local/BerkeleyDB.6.1 --with-xqilla=/usr/local/lib
[root@RO build_unix]# make
[root@RO build_unix]# make install
When operation completes this will install XML DB to /usr/local/BerkeleyDBXML.6.0/ directory. Verify the installation by typing below commands
[root@RO build_unix]# cd /usr/local/BerkeleyDBXML.6.0/
[root@RO BerkeleyDBXML.6.0]# ls
bin include lib
[root@RO BerkeleyDBXML.6.0]# cd bin
[root@RO bin]# ls
dbxml dbxml_dump dbxml_load dbxml_load_container
[root@RO bin]# dbxml
bash: dbxml: command not found...
[root@RO bin]# ./dbxml
dbxml>
if you see the prompt you are good :)
No comments:
Post a Comment