前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >milvus源码编译

milvus源码编译

原创
作者头像
melodyshu
修改2023-11-11 11:28:36
3450
修改2023-11-11 11:28:36
举报
文章被收录于专栏:milvus数据库

编译环境

os:ubuntu22.04.6 live-server,x64

gcc:9.4.0

cmake:3.24.0

go:1.18.10

milvus: v2.3.2

操作系统建议使用ubuntu。在centos7上未编译成功。

在root账户下操作。

安装gcc

因为后面需要安装cmake,因此先安装如下依赖:

代码语言:shell
复制
apt install g++ gcc make libssl-dev

添加i386架构的支持。这个命令通常在需要安装32位软件包时使用。后面安装依赖需要这个。

代码语言:shell
复制
dpkg --add-architecture i386

apt-get update

安装cmake

下载路径:

代码语言:text
复制
https://codeload.github.com/Kitware/CMake/zip/refs/tags/v3.24.0

下载后进行安装:

代码语言:shell
复制
unzip CMake-3.24.0.zip

cd CMake-3.24.0/

./configure

make -j4  #-j4代表开启4个并发进行编译

make install



//查看版本

cmake --version

cmake version 3.24.0

安装OpenBLAS

BLAS(Basic Linear Algebra Subprograms 基础线性代数程序集)是一个应用程序接口(API)标准,用以规范发布基础线性代数操作的数值库(如矢量或矩阵乘法),OpenBLAS是BLAS标准的一种具体实现。

OpenBLAS被应用于科学计算、数据分析、深度学习算法、人工智能等领域。

下载milvus源码:

代码语言:text
复制
https://github.com/milvus-io/milvus/archive/refs/tags/v2.3.2.zip

源码包拷贝至/mnt目录

代码语言:shell
复制
cd /mnt

unzip milvus-2.3.2.zip

脚本会使用wget去国外站点下载一些软件包,由于国外访问比较慢,解决这个问题,可以配置代理。

设置环境变量:

代码语言:shell
复制
export http\_proxy="http://192.168.230.10:1080"

export https\_proxy="http://192.168.230.10:1080"

这2个环境变量针对wget,curl,cmake,yum均适用。

执行脚本的时候还会去github下载源码,因此还需要配置一下git的代理:

代码语言:shell
复制
git config --global http.proxy http://192.168.230.10:1080

git config --global https.proxy http://192.168.230.10:1080

git config --list

执行脚本install_deps_embd.sh(OpenBLAS):

由于是用root用户执行,无需sudo,去掉脚本里的sudo。

代码语言:shell
复制
. scripts/install\_deps\_embd.sh

这个阶段执行会比较耗时。

安装其它依赖

执行install_deps.sh脚本,执行之前也去掉sudo。

代码语言:shell
复制
. scripts/install\_deps.sh

这个脚本执行耗时不长。

源码编译

前面的准备工作都已经完成,现在开始进行源码编译。

代码语言:shell
复制
make milvus

这个阶段会耗时很长。

执行完成后会产生一个二进制文件:

代码语言:shell
复制
bin/milvus

产生的库文件位置:

代码语言:shell
复制
internal/core/output/lib

至此milvus的源码编译完成。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 编译环境
  • 安装gcc
  • 安装cmake
  • 安装OpenBLAS
  • 安装其它依赖
  • 源码编译
相关产品与服务
向量数据库
腾讯云向量数据库(Tencent Cloud VectorDB)是一款全托管的自研企业级分布式数据库服务,专用于存储、检索、分析多维向量数据。该数据库支持多种索引类型和相似度计算方法,单索引支持千亿级向量规模,可支持百万级 QPS 及毫秒级查询延迟。腾讯云向量数据库不仅能为大模型提供外部知识库,提高大模型回答的准确性,还可广泛应用于推荐系统、自然语言处理等 AI 领域。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档