【发布时间】:2017-04-14 17:05:00
【问题描述】:
MADlib 是用于 PostgreSQL 的最完整、最高效(更快的函数)和最可靠的数学库...official download 没有关于 Debian 或 UBUNTU “即插即用安装”的线索。
检查其他字体,最好的(最简单的)是2013年的apt-get it的旧指令。
...还有一些 2014 年的 lost-script... 评论说“可以下载 .rpm 软件包并安装在 Ubuntu 中,只需使用 Alien 命令将软件包转换为 .deb它会工作”。
问题:安装 MADLib 的安全且最简单的方法?
今天(2017 年)在 UBUNTU 16 LTS 和 PostgreSQL v9.6 上。
注意和第二个问题:Debian stable 和 UBUNTU LTS 一起是最流行的网络服务器 Linux 发行版,所以.deb 是最重要的发行形式。 .. 为什么 MADlab 的维护者拒绝看到它?为什么不欢迎.deb 用户?apt 或转换后的.deb 存在一些技术或许可问题?
编辑
我有两种类型的 SQL 服务器,如所述的 v9.6,但最重要的是 PostgreSQL v9.5.X(!抱歉,我们完全打算使用 v9.6服务器)。
PostgreSQL 9.5.X 在 UBUNTU 16 LTS (xenial) 中的情况
psql --version并进入其中,select version();显示 v9.5.6。-
命令
您需要安装 postgresql-server-dev-X.Y 用于构建 用于构建客户端应用程序的服务器端扩展或 libpq-dev。 错误:命令返回 1: ['/usr/bin/pg_config', '--libdir']pgxnclient install madlib显示
...pg_config 不是配置文件,而是一个 shell 工具...所以我通过sudo apt-get install libpq-dev 安装了它(ok!)
- 命令
pgxnclient install madlib显示信息:最佳版本:madlib 1.10.0 信息:保存 /tmp/tmpip4ngh/madlib-1.10.0.zip 信息:解压:/tmp/tmpip4ngh/madlib-1.10.0.zip 信息:运行配置 错误:必须存在 cmake 2.8 或更高版本才能配置和安装 MADlib /tmp/tmpip4ngh/madlib-1.10.0/configure: 13: 退出: 非法数字: -1 错误:配置失败,返回码 2
...但不是“CMake版本错误”,是“无CMake”错误,所以用apt install cmake!
但是它们是一个 cmake 问题,
pgxnclient 安装 madlib 信息:最佳版本:madlib 1.10.0 信息:保存 /tmp/tmpspQ3zf/madlib-1.10.0.zip 信息:解压:/tmp/tmpspQ3zf/madlib-1.10.0.zip 信息:运行配置 -- C 编译器标识为 GNU 5.4.0 -- CXX 编译器标识为 GNU 5.4.0 -- 检查工作的 C 编译器:/usr/bin/gcc -- 检查工作的 C 编译器:/usr/bin/gcc -- 工作 -- 检测 C 编译器 ABI 信息 -- 检测 C 编译器 ABI 信息 - 完成 -- 检测 C 编译特性 -- 检测 C 编译特性 - 完成 -- 检查工作的 CXX 编译器:/usr/bin/g++ -- 检查工作的 CXX 编译器:/usr/bin/g++ -- 工作 -- 检测 CXX 编译器 ABI 信息 -- 检测 CXX 编译器 ABI 信息 - 完成 -- 检测 CXX 编译特性 -- 检测 CXX 编译特性 - 完成 -- 找不到 Boost -- 没有找到足够新的版本 (>= 1.47) 的 Boost。会下载。 -- 找到 PythonInterp:/usr/bin/python(找到版本“2.7.12”) src/ports/postgres/cmake/FindPostgreSQL.cmake:161 处的 CMake 错误(消息): 找到 pg_config ("/usr/bin/pg_config"),但 pg_config.h 文件不存在于 服务器包括目录(/usr/include/postgresql/9.5/server)。 调用堆栈(最近的调用优先): src/ports/postgres/cmake/PostgreSQLUtils.cmake:66 (find_package) src/ports/postgres/CMakeLists.txt:360 (determine_target_versions)-- 配置不完整,出现错误! 另请参见“/tmp/tmpspQ3zf/madlib-1.10.0/build/CMakeFiles/CMakeOutput.log”。 信息:建筑扩展 make -C 构建所有 make[1]: 进入目录'/tmp/tmpspQ3zf/madlib-1.10.0/build' make[1]: * 没有将目标设为“全部”的规则。停止。 make[1]: 离开目录 '/tmp/tmpspQ3zf/madlib-1.10.0/build' Makefile:5:目标“全部”的配方失败 make: * [all] 错误 2 错误:命令返回 2:make PG_CONFIG=/usr/bin/pg_config all
【问题讨论】:
-
对于由
.rpm安装的 MADLib,请参阅stackoverflow.com/q/43681870/287948 的问题 -
2020 年更新。代替使用
apt,即插即用安装使用docker和PGXN、hub.docker.com/r/madlib/postgres_10 和pgxn.org/user/madlib。所有都应该对 pg 版本 10 或更高版本有效。
标签: postgresql installation shared-libraries