编译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超时错误可以多执行几次。

相关推荐
冰封之寂37 分钟前
Docker 资源管理终极指南:CPU、内存与 IO 的精细化控制
linux·运维·服务器·docker·云计算
xiaoye-duck1 小时前
《Linux系统编程》Linux 系统多线程(五):<线程同步与互斥>线程互斥(上):从条件变量到生产者消费者模型详解
linux·线程
小柯南敲键盘2 小时前
图片翻译API接入与自动化实现指南
运维·python·自动化
云计算磊哥@2 小时前
运维开发宝典058-大型网站nginx服务器管理全集4
服务器·nginx·运维开发
952363 小时前
Docker - 基础
运维·后端·docker·容器
Promise微笑3 小时前
智能激光清障仪选型指南:高效运维与安全保障的关键考量
运维·安全
Code_Ignis3 小时前
docker国内可用源(持续维护)
运维·docker·容器
一叶龙洲3 小时前
向日葵远程Ubuntu,支持隐私屏
linux·运维·ubuntu
酷可达拉斯3 小时前
Linux操作系统-shell编程之Grep与正则表达式
linux·运维·服务器·正则表达式·centos
寒水馨4 小时前
Linux下载、安装llama.cpp-b10068(附安装包llama-b10068-bin-ubuntu-vulkan-x64.tar.gz)
linux·ubuntu·llm·llama·本地部署·llama.cpp·推理引擎