@@ -10,10 +10,10 @@ Here we will install the Debian/Ubuntu packages.
1010sudo apt-get update -y --fix-missing
1111sudo apt-get upgrade -y
1212sudo apt-get install -y --no-install-suggests --no-install-recommends \
13- apt-transport-https autoconf automake bison build-essential bzip2 ca-certificates \
13+ apt-transport-https automake bison build-essential bzip2 ca-certificates \
1414 curl ed flex g++-9 gcc-9 git gnupg-agent javacc libarchive-tools libatlas-base-dev \
1515 libavcodec-dev libavformat-dev libboost-all-dev libbz2-dev libc-ares-dev libcurl4-openssl-dev \
16- libdc1394-22-dev libgflags-dev libgoogle-glog-dev libgtk-3-dev libgtk2.0-dev \
16+ libncurses5-dev libdc1394-22-dev libgflags-dev libgoogle-glog-dev libgtk-3-dev libgtk2.0-dev \
1717 libhdf5-dev libjpeg-dev libjsoncpp-dev libleveldb-dev liblmdb-dev \
1818 liblz4-dev libopenblas-dev libopenmpi-dev libpng-dev librdkafka-dev libsnappy-dev libssl-dev \
1919 libswscale-dev libtbb-dev libtbb2 libtiff-dev libtiff5-dev libtool libzmq3-dev linux-libc-dev mpich \
@@ -80,6 +80,20 @@ cd $VDMS_DEP_DIR/CMake
8080make ${BUILD_THREADS}
8181sudo make install
8282```
83+ *** NOTE:*** If multiple versions of Python 3 are present on your system, verify you are using Python3.9 or higher. You can specify the specific verison in above command and also set the following with your specific version: ` alias python3=/usr/bin/python3.x ` .
84+
85+
86+ #### ** Autoconf v2.71**
87+ ``` bash
88+ AUTOCONF_VERSION=" 2.71"
89+ curl -L -o $VDMS_DEP_DIR /autoconf-${AUTOCONF_VERSION} .tar.xz https://ftp.gnu.org/gnu/autoconf/autoconf-${AUTOCONF_VERSION} .tar.xz
90+ cd $VDMS_DEP_DIR
91+ tar -xf autoconf-${AUTOCONF_VERSION} .tar.xz
92+ cd autoconf-${AUTOCONF_VERSION}
93+ ./configure
94+ make ${BUILD_THREADS}
95+ sudo make install
96+ ```
8397
8498
8599#### ** Protobuf v24.2 (4.24.2)**
@@ -90,38 +104,44 @@ git clone -b v${PROTOBUF_VERSION} --recurse-submodules https://github.com/protoc
90104
91105cd $VDMS_DEP_DIR /protobuf/third_party/googletest
92106mkdir build && cd build
93- cmake -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr/local \
107+ cmake -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DCMAKE_BUILD_TYPE=Release \
108+ -DBUILD_SHARED_LIBS=ON -DCMAKE_INSTALL_PREFIX=/usr/local \
94109 -DBUILD_GMOCK=ON -DCMAKE_CXX_STANDARD=17 ..
95110make ${BUILD_THREADS}
96111sudo make install
97- sudo ldconfig
98112
99113cd $VDMS_DEP_DIR /protobuf/third_party/abseil-cpp
100114mkdir build && cd build
101- cmake -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DCMAKE_PREFIX_PATH=/usr/local/ -DCMAKE_INSTALL_PREFIX=/usr/local/ \
102- -DABSL_BUILD_TESTING=ON -DABSL_ENABLE_INSTALL=ON -DABSL_USE_EXTERNAL_GOOGLETEST=ON \
115+ cmake -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DBUILD_SHARED_LIBS=ON \
116+ -DCMAKE_INSTALL_PREFIX=/usr/local -DABSL_BUILD_TESTING=ON \
117+ -DABSL_USE_EXTERNAL_GOOGLETEST=ON \
103118 -DABSL_FIND_GOOGLETEST=ON -DCMAKE_CXX_STANDARD=17 ..
104119make ${BUILD_THREADS}
105120sudo make install
121+ sudo ldconfig /usr/local/lib
106122
107123cd $VDMS_DEP_DIR /protobuf
108- cmake -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DCMAKE_INSTALL_PREFIX=/usr/local -DCMAKE_CXX_STANDARD=17 \
109- -Dprotobuf_ABSL_PROVIDER=package -DCMAKE_PREFIX_PATH=/usr/local .
124+ cmake -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DCMAKE_INSTALL_PREFIX=/usr/local \
125+ -DCMAKE_CXX_STANDARD=17 -Dprotobuf_BUILD_SHARED_LIBS=ON \
126+ -Dprotobuf_ABSL_PROVIDER=package \
127+ -Dprotobuf_BUILD_TESTS=ON \
128+ -Dabsl_DIR=/usr/local/lib/cmake/absl .
110129make ${BUILD_THREADS}
111130sudo make install
112131
113132python3 -m pip install --no-cache-dir " protobuf==4.${PROTOBUF_VERSION} "
114133```
115134
116135
117- #### ** Faiss v1.7.3 **
136+ #### ** Faiss v1.7.4 **
118137Install the Faiss library for similarity search.
119138``` bash
120- FAISS_VERSION=" v1.7.3 "
139+ FAISS_VERSION=" v1.7.4 "
121140git clone --branch ${FAISS_VERSION} https://github.com/facebookresearch/faiss.git $VDMS_DEP_DIR /faiss
122141cd $VDMS_DEP_DIR /faiss
123142mkdir build && cd build
124- cmake -DFAISS_ENABLE_GPU=OFF -DPython_EXECUTABLE=/usr/bin/python3 ..
143+ cmake -DFAISS_ENABLE_GPU=OFF -DPython_EXECUTABLE=/usr/bin/python3 \
144+ -DBUILD_SHARED_LIBS=ON -DCMAKE_BUILD_TYPE=Release ..
125145make ${BUILD_THREADS}
126146sudo make install
127147```
@@ -192,6 +212,40 @@ cmake -D BUILD_PERF_TESTS=OFF -D BUILD_TESTS=OFF -D CMAKE_BUILD_TYPE=RELEASE -D
192212make ${BUILD_THREADS}
193213sudo make install
194214```
215+
216+
217+ #### ** Neo4j Client**
218+ Below are instructions for installing *** libneo4j-omni*** which requires Peg, libcypher-parser and libedit as dependencies.
219+ ``` bash
220+ PEG_VERSION=" 0.1.19"
221+ curl -L -o $VDMS_DEP_DIR /peg-${PEG_VERSION} .tar.gz https://github.com/gpakosz/peg/releases/download/${PEG_VERSION} /peg-${PEG_VERSION} .tar.gz
222+ cd $VDMS_DEP_DIR /
223+ tar -xf peg-${PEG_VERSION} .tar.gz
224+ cd peg-${PEG_VERSION}
225+ make ${BUILD_THREADS}
226+ sudo make install
227+
228+ git clone https://github.com/cleishm/libcypher-parser.git $VDMS_DEP_DIR /libcypher
229+ cd $VDMS_DEP_DIR /libcypher
230+ ./autogen.sh
231+ ./configure
232+ sudo make install
233+
234+ LIBEDIT_VERSION=" 20230828-3.1"
235+ curl -L -o $VDMS_DEP_DIR /libedit-${LIBEDIT_VERSION} .tar.gz https://thrysoee.dk/editline/libedit-${LIBEDIT_VERSION} .tar.gz
236+ cd $VDMS_DEP_DIR /
237+ tar -xzf libedit-${LIBEDIT_VERSION} .tar.gz
238+ cd libedit-${LIBEDIT_VERSION}
239+ ./configure
240+ make ${BUILD_THREADS}
241+ sudo make install
242+
243+ git clone https://github.com/majensen/libneo4j-omni.git $VDMS_DEP_DIR /libomni
244+ cd $VDMS_DEP_DIR /libomni
245+ ./autogen.sh
246+ ./configure --disable-werror --prefix=/usr
247+ sudo make install -w --debug
248+ ```
195249<br >
196250
197251## Install VDMS
@@ -216,3 +270,10 @@ cmake -DCMAKE_CXX_FLAGS='-DPM' ..
216270make ${BUILD_THREADS}
217271```
218272
273+ *** NOTE:*** If error similar to ` cannot open shared object file: No such file or directory ` obtained during loading shared libraries, such as ` libpmgd.so ` or ` libvcl.so ` , add the correct directories to ` LD_LIBRARY_PATH ` . This may occur for non-root users. To find the correct directory, run ` find ` command for missing object file. An example solution for missing ` libpmgd.so ` and ` libvcl.so ` is:
274+ ``` bash
275+ find / -name " libpmgd*so*" # <Path_to_VDMS_directory>/build/src/pmgd/src
276+ find / -name " libvcl*so*" # <Path_to_VDMS_directory>/build/src/vcl
277+ export LD_LIBRARY_PATH=${LD_LIBRARY_PATH} :< Path_to_VDMS_directory> /build/src/pmgd/src:< Path_to_VDMS_directory> /build/src/vcl
278+ ```
279+
0 commit comments