编译pg_duckdb步骤

  1. 要求cmake的版本要高于3.17,可以通过下载最新的cmake的程序,然后设置.bash_profile的PATH环境变量,将最新的cmake的bin目录放到PATH环境变量的最前面

  2. g++的版本要支持c++17标准,否则会报 error 'invoke_result in namespace 'std does not name a template type 错误

  3. 下载pg_duckdb的源码GitHub - duckdb/pg_duckdb: DuckDB-powered Postgres for high performance apps & analytics.

注意下载解压后,里面的third_party目录是空的,本来make的时候会执行

git submodule update --init --recursive 来下载所需要的duckdb的源码到该目录中,但是实际使用貌似不行,所以需要到github中直接下载duckdb的源码并放到third_party中

  1. 第一次执行的时候发现报下面的错误,可以通过

git init命令解决

make

git submodule update --init --recursive

fatal: 不是一个 git 仓库(或者任何父目录):.git

make: *** [Makefile:109:.git/modules/third_party/duckdb/HEAD] 错误 128

4.添加postgresql 的bin目录到PATH环境变量中,因为编译过程要执行pg_config命令,获取到server/include 目录

  1. 安装lz4-devel,否则编译完后无法链接。

  2. make过程中还会执行git clone命令,国内访问git网站时灵时不灵,如果报443超时错误可以多执行几次。

相关推荐
java_logo1 小时前
HashiCorp Vault 镜像拉取与 Docker 部署全指南
运维·docker·容器
Maple_land3 小时前
Linux复习:冯·诺依曼体系下的计算机本质:存储分级与IO效率的底层逻辑
linux·运维·服务器·c++·centos
李的阿洁4 小时前
k8s中的容器服务
linux·容器·kubernetes
Macbethad4 小时前
用流程图去描述一个蓝牙BLE数字钥匙的初始化连接过程
服务器·网络·流程图
谢景行^顾4 小时前
数据结构知识掌握
linux·数据结构·算法
linmengmeng_13145 小时前
【Jenkins】Jenkins配置从节点 - Launch Agent
运维·servlet·jenkins
人工智能训练5 小时前
如何在 Ubuntu 22.04 中安装 Docker 引擎和 Linux 版 Docker Desktop 桌面软件
linux·运维·服务器·数据库·ubuntu·docker·ai编程
Maple_land6 小时前
Linux复习:系统调用与fork
linux·运维·服务器·c++·centos
996终结者6 小时前
Docker核心用途实战:彻底解决环境一致性问题
运维·docker·容器
无聊的小坏坏6 小时前
Poll 服务器实战教学:从 Select 迁移到更高效的多路复用
linux·服务器·poll·io多路复用