diff --git a/ci/images/tugraph-compile-arm64v8-centos7-Dockerfile b/ci/images/tugraph-compile-arm64v8-centos7-Dockerfile index 57fc061368..27414a4b73 100644 --- a/ci/images/tugraph-compile-arm64v8-centos7-Dockerfile +++ b/ci/images/tugraph-compile-arm64v8-centos7-Dockerfile @@ -386,11 +386,12 @@ RUN wget -O /tmp/openblas-faiss.tar.gz https://tugraph-web.oss-cn-beijing.aliyun && rm -rf /tmp/openblas-faiss /tmp/openblas-faiss.tar.gz && ldconfig # install vsag -RUN wget https://tugraph-web.oss-cn-beijing.aliyuncs.com/tugraph/deps/vsag-0.11.5.tar.gz -O /tmp/vsag.tar.gz && \ +RUN wget https://vsagcache.oss-rg-china-mainland.aliyuncs.com/vsag/v0.14.4.tar.gz -O /tmp/vsag.tar.gz && \ cd /tmp && mkdir vsag && tar -xzf vsag.tar.gz --strip-components=1 -C vsag && cd vsag && \ + chmod +x /tmp/vsag/scripts/deps/install_deps_centos.sh && ./tmp/vsag/scripts/deps/install_deps_centos.sh && \ yum install -y libgfortran5.aarch64 && ln -s /usr/lib64/libgfortran.so.5.0.0 /usr/local/lib/libgfortran.so && ldconfig && \ - mkdir build && cd build && cmake -DCMAKE_BUILD_TYPE=Release -DENABLE_INTEL_MKL=OFF -DDISABLE_AVX2_FORCE=ON -DDISABLE_AVX512_FORCE=ON .. && \ - make ${JFLAG} && make install && \ + mkdir build && cd build && cmake -DCMAKE_BUILD_TYPE=Release -DENABLE_WERROR=OFF -DENABLE_TOOLS=OFF -DENABLE_TESTS=OFF -DENABLE_INTEL_MKL=OFF -DDISABLE_AVX2_FORCE=ON -DDISABLE_AVX512_FORCE=ON .. && \ + make ${JFLAG} && make install && cp /tmp/vsag/build/_deps/roaringbitmap-build/src/libroaring.a /usr/local/lib/ && \ cd / && rm -rf /tmp/vsag* RUN sed -i '3 s/-lgomp/-l:libgomp.a/' /usr/local/lib64/libgomp.spec diff --git a/ci/images/tugraph-compile-centos-stream-9-Dockerfile b/ci/images/tugraph-compile-centos-stream-9-Dockerfile index 438d61f5dd..40d8ca98d9 100644 --- a/ci/images/tugraph-compile-centos-stream-9-Dockerfile +++ b/ci/images/tugraph-compile-centos-stream-9-Dockerfile @@ -338,11 +338,12 @@ RUN wget https://tugraph-web.oss-cn-beijing.aliyuncs.com/tugraph/deps/tabulate-3 && rm -rf /tabulate* # install vsag -RUN wget https://tugraph-web.oss-cn-beijing.aliyuncs.com/tugraph/deps/vsag-0.11.5.tar.gz -O /tmp/vsag.tar.gz && \ +RUN wget https://vsagcache.oss-rg-china-mainland.aliyuncs.com/vsag/v0.14.4.tar.gz -O /tmp/vsag.tar.gz && \ cd /tmp && mkdir vsag && tar -xzf vsag.tar.gz --strip-components=1 -C vsag && cd vsag && \ - yum install -y libgfortran.x86_64 && ln -s /usr/lib64/libgfortran.so.5.0.0 /usr/local/lib/libgfortran.so && ldconfig && \ - mkdir build && cd build && cmake -DCMAKE_BUILD_TYPE=Release -DENABLE_INTEL_MKL=OFF -DDISABLE_AVX2_FORCE=ON -DDISABLE_AVX512_FORCE=ON .. && \ - make ${JFLAG} && make install && \ + chmod +x /tmp/vsag/scripts/deps/install_deps_centos.sh && ./tmp/vsag/scripts/deps/install_deps_centos.sh && \ + yum install -y libgfortran5.aarch64 && ln -s /usr/lib64/libgfortran.so.5.0.0 /usr/local/lib/libgfortran.so && ldconfig && \ + mkdir build && cd build && cmake -DCMAKE_BUILD_TYPE=Release -DENABLE_WERROR=OFF -DENABLE_TOOLS=OFF -DENABLE_TESTS=OFF -DENABLE_INTEL_MKL=OFF -DDISABLE_AVX2_FORCE=ON -DDISABLE_AVX512_FORCE=ON .. && \ + make ${JFLAG} && make install && cp /tmp/vsag/build/_deps/roaringbitmap-build/src/libroaring.a /usr/local/lib/ && \ cd / && rm -rf /tmp/vsag* RUN sed -i '3 s/-lgomp/-l:libgomp.a/' /usr/local/lib64/libgomp.spec diff --git a/ci/images/tugraph-compile-centos7-Dockerfile b/ci/images/tugraph-compile-centos7-Dockerfile index a3ce5a1757..065a766355 100644 --- a/ci/images/tugraph-compile-centos7-Dockerfile +++ b/ci/images/tugraph-compile-centos7-Dockerfile @@ -353,11 +353,12 @@ RUN wget -O /tmp/openblas-faiss.tar.gz https://tugraph-web.oss-cn-beijing.aliyun && rm -rf /tmp/openblas-faiss /tmp/openblas-faiss.tar.gz && ldconfig # install vsag -RUN wget https://tugraph-web.oss-cn-beijing.aliyuncs.com/tugraph/deps/vsag-0.11.5.tar.gz -O /tmp/vsag.tar.gz && \ +RUN wget https://vsagcache.oss-rg-china-mainland.aliyuncs.com/vsag/v0.14.4.tar.gz -O /tmp/vsag.tar.gz && \ cd /tmp && mkdir vsag && tar -xzf vsag.tar.gz --strip-components=1 -C vsag && cd vsag && \ - yum install -y libgfortran5.x86_64 && ln -s /usr/lib64/libgfortran.so.5.0.0 /usr/local/lib/libgfortran.so && ldconfig && \ - mkdir build && cd build && cmake -DCMAKE_BUILD_TYPE=Release -DENABLE_INTEL_MKL=OFF -DDISABLE_AVX2_FORCE=ON -DDISABLE_AVX512_FORCE=ON .. && \ - make ${JFLAG} && make install && \ + chmod +x /tmp/vsag/scripts/deps/install_deps_centos.sh && ./tmp/vsag/scripts/deps/install_deps_centos.sh && \ + yum install -y libgfortran5.aarch64 && ln -s /usr/lib64/libgfortran.so.5.0.0 /usr/local/lib/libgfortran.so && ldconfig && \ + mkdir build && cd build && cmake -DCMAKE_BUILD_TYPE=Release -DENABLE_WERROR=OFF -DENABLE_TOOLS=OFF -DENABLE_TESTS=OFF -DENABLE_INTEL_MKL=OFF -DDISABLE_AVX2_FORCE=ON -DDISABLE_AVX512_FORCE=ON .. && \ + make ${JFLAG} && make install && cp /tmp/vsag/build/_deps/roaringbitmap-build/src/libroaring.a /usr/local/lib/ && \ cd / && rm -rf /tmp/vsag* RUN sed -i '3 s/-lgomp/-l:libgomp.a/' /usr/local/lib64/libgomp.spec diff --git a/ci/images/tugraph-compile-centos8-Dockerfile b/ci/images/tugraph-compile-centos8-Dockerfile index bd59e7f028..fecbd450f9 100644 --- a/ci/images/tugraph-compile-centos8-Dockerfile +++ b/ci/images/tugraph-compile-centos8-Dockerfile @@ -358,11 +358,12 @@ RUN wget -O /tmp/openblas-faiss.tar.gz https://tugraph-web.oss-cn-beijing.aliyun && rm -rf /tmp/openblas-faiss /tmp/openblas-faiss.tar.gz && ldconfig # install vsag -RUN wget https://tugraph-web.oss-cn-beijing.aliyuncs.com/tugraph/deps/vsag-0.11.5.tar.gz -O /tmp/vsag.tar.gz && \ +RUN wget https://vsagcache.oss-rg-china-mainland.aliyuncs.com/vsag/v0.14.4.tar.gz -O /tmp/vsag.tar.gz && \ cd /tmp && mkdir vsag && tar -xzf vsag.tar.gz --strip-components=1 -C vsag && cd vsag && \ - yum install -y libgfortran.x86_64 && ln -s /usr/lib64/libgfortran.so.5.0.0 /usr/local/lib/libgfortran.so && ldconfig && \ - mkdir build && cd build && cmake -DCMAKE_BUILD_TYPE=Release -DENABLE_INTEL_MKL=OFF -DDISABLE_AVX2_FORCE=ON -DDISABLE_AVX512_FORCE=ON .. && \ - make ${JFLAG} && make install && \ + chmod +x /tmp/vsag/scripts/deps/install_deps_centos.sh && ./tmp/vsag/scripts/deps/install_deps_centos.sh && \ + yum install -y libgfortran5.aarch64 && ln -s /usr/lib64/libgfortran.so.5.0.0 /usr/local/lib/libgfortran.so && ldconfig && \ + mkdir build && cd build && cmake -DCMAKE_BUILD_TYPE=Release -DENABLE_WERROR=OFF -DENABLE_TOOLS=OFF -DENABLE_TESTS=OFF -DENABLE_INTEL_MKL=OFF -DDISABLE_AVX2_FORCE=ON -DDISABLE_AVX512_FORCE=ON .. && \ + make ${JFLAG} && make install && cp /tmp/vsag/build/_deps/roaringbitmap-build/src/libroaring.a /usr/local/lib/ && \ cd / && rm -rf /tmp/vsag* RUN sed -i '3 s/-lgomp/-l:libgomp.a/' /usr/local/lib64/libgomp.spec diff --git a/ci/images/tugraph-compile-ubuntu18.04-Dockerfile b/ci/images/tugraph-compile-ubuntu18.04-Dockerfile index 22fde80d93..5f2029911c 100644 --- a/ci/images/tugraph-compile-ubuntu18.04-Dockerfile +++ b/ci/images/tugraph-compile-ubuntu18.04-Dockerfile @@ -362,10 +362,11 @@ RUN wget -O /tmp/openblas-faiss.tar.gz https://tugraph-web.oss-cn-beijing.aliyun # install vsag RUN apt-get install -y gfortran && ln -s /usr/lib/x86_64-linux-gnu/libgfortran.so.4 /usr/local/lib/libgfortran.so -RUN wget https://tugraph-web.oss-cn-beijing.aliyuncs.com/tugraph/deps/vsag-0.11.5.tar.gz -O /tmp/vsag.tar.gz && \ +RUN wget https://vsagcache.oss-rg-china-mainland.aliyuncs.com/vsag/v0.14.4.tar.gz -O /tmp/vsag.tar.gz && \ cd /tmp && mkdir vsag && tar -xzf vsag.tar.gz --strip-components=1 -C vsag && cd vsag && \ - mkdir build && cd build && cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_LIBDIR=lib64 -DENABLE_INTEL_MKL=OFF -DDISABLE_AVX2_FORCE=ON -DDISABLE_AVX512_FORCE=ON .. && \ - make -j10 && make install && \ + chmod +x /tmp/vsag/scripts/deps/install_deps_ubuntu.sh && ./tmp/vsag/scripts/deps/install_deps_ubuntu.sh && \ + mkdir build && cd build && cmake -DCMAKE_BUILD_TYPE=Release -DENABLE_WERROR=OFF -DENABLE_TOOLS=OFF -DENABLE_TESTS=OFF -DENABLE_INTEL_MKL=OFF -DDISABLE_AVX2_FORCE=ON -DDISABLE_AVX512_FORCE=ON .. && \ + make -j10 && make install && cp /tmp/vsag/build/_deps/roaringbitmap-build/src/libroaring.a /usr/local/lib/ && \ cd / && rm -rf /tmp/vsag* RUN sed -i '3 s/-lgomp/-l:libgomp.a/' /usr/local/lib64/libgomp.spec diff --git a/src/BuildLGraphApi.cmake b/src/BuildLGraphApi.cmake index 5d1181f35f..db2b73edb8 100644 --- a/src/BuildLGraphApi.cmake +++ b/src/BuildLGraphApi.cmake @@ -110,7 +110,13 @@ target_include_directories(${TARGET_LGRAPH} PUBLIC if (CMAKE_CXX_COMPILER_ID STREQUAL "GNU") target_link_libraries(${TARGET_LGRAPH} PUBLIC - vsag + -laio + /usr/local/lib64/libvsag_static.a + /usr/local/lib64/libvsag_mockimpl.a + libdiskann.a + libcpuinfo.a + libsimd.a + libroaring.a libgomp.a -static-libstdc++ -static-libgcc @@ -131,7 +137,13 @@ if (CMAKE_CXX_COMPILER_ID STREQUAL "GNU") elseif (CMAKE_CXX_COMPILER_ID MATCHES "Clang") if (CMAKE_SYSTEM_NAME STREQUAL "Darwin") target_link_libraries(${TARGET_LGRAPH} PUBLIC - vsag + -laio + /usr/local/lib64/libvsag_static.a + /usr/local/lib64/libvsag_mockimpl.a + libdiskann.a + libcpuinfo.a + libsimd.a + libroaring.a /opt/OpenBLAS/lib/libopenblas.a faiss ${Boost_LIBRARIES} @@ -142,7 +154,13 @@ elseif (CMAKE_CXX_COMPILER_ID MATCHES "Clang") ${JAVA_JVM_LIBRARY}) else () target_link_libraries(${TARGET_LGRAPH} PUBLIC - vsag + -laio + /usr/local/lib64/libvsag_static.a + /usr/local/lib64/libvsag_mockimpl.a + libdiskann.a + libcpuinfo.a + libsimd.a + libroaring.a /opt/OpenBLAS/lib/libopenblas.a faiss rt diff --git a/src/BuildLGraphServer.cmake b/src/BuildLGraphServer.cmake index a4e2725f02..83f1171cef 100644 --- a/src/BuildLGraphServer.cmake +++ b/src/BuildLGraphServer.cmake @@ -81,7 +81,13 @@ if (NOT (CMAKE_SYSTEM_NAME STREQUAL "Darwin")) lgraph_cypher_lib geax_isogql bolt - vsag + -laio + /usr/local/lib64/libvsag_static.a + /usr/local/lib64/libvsag_mockimpl.a + libdiskann.a + libcpuinfo.a + libsimd.a + libroaring.a /opt/OpenBLAS/lib/libopenblas.a faiss # begin static linking @@ -142,7 +148,13 @@ add_executable(${TARGET_SERVER} target_link_libraries(${TARGET_SERVER} ${TARGET_SERVER_LIB} librocksdb.a - vsag + -laio + /usr/local/lib64/libvsag_static.a + /usr/local/lib64/libvsag_mockimpl.a + libdiskann.a + libcpuinfo.a + libsimd.a + libroaring.a /opt/OpenBLAS/lib/libopenblas.a faiss ) diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index f3078b7992..315e72503d 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -44,9 +44,7 @@ install(FILES install(FILES ${CMAKE_CURRENT_LIST_DIR}/../release/local/etc/lgraph.json DESTINATION etc) -install(FILES - /usr/local/lib64/libvsag.so - DESTINATION lib64/lgraph) +install(FILES DESTINATION lib64/lgraph) install(DIRECTORY ${CMAKE_CURRENT_LIST_DIR}/../include DESTINATION ./) diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt index b0fa27c2e1..18eef56b69 100644 --- a/test/CMakeLists.txt +++ b/test/CMakeLists.txt @@ -143,7 +143,13 @@ add_executable(unit_test ) target_link_libraries(unit_test - vsag + -laio + /usr/local/lib64/libvsag_static.a + /usr/local/lib64/libvsag_mockimpl.a + libdiskann.a + libcpuinfo.a + libsimd.a + libroaring.a /opt/OpenBLAS/lib/libopenblas.a faiss lgraph_server_lib