Pet*_*uss 6 postgresql installation shared-libraries
MADlib是PostgreSQL中最完整,最高效(更快的功能)和可靠的数学库... 官方下载 没有关于Debian或UBUNTU"即插即用安装"的线索.
检查其他字体,最好(最简单)是2013年的apt-get它的旧指令.
...还有一些2014年的丢失脚本 ...评论说"可以下载.rpm软件包并安装在Ubuntu中只需将软件包转换为.deb使用Alien命令即可 ".
问题:安装MADLib的安全且最简单的方法是什么?
今天(2017年)在UBUNTU 16 LTS和PostgreSQL v9.6.
注意和次要问题:Debian stable和UBUNTU LTS是最受欢迎的Web服务器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.
命令pgxnclient install madlib显示
You need to install postgresql-server-dev-X.Y for building a server-side extension or libpq-dev for building a client-side application. ERROR: command returned 1: ['/usr/bin/pg_config', '--libdir']
... ... pg_config不是配置文件而是shell工具......所以我安装了它sudo apt-get install libpq-dev(确定!)
pgxnclient install madlib显示INFO: best version: madlib 1.10.0 INFO: saving /tmp/tmpip4ngh/madlib-1.10.0.zip INFO: unpacking: /tmp/tmpip4ngh/madlib-1.10.0.zip INFO: running configure error: cmake 2.8 or higher must be present to configure and install MADlib /tmp/tmpip4ngh/madlib-1.10.0/configure: 13: exit: Illegal number: -1 ERROR: configure failed with return code 2
...但它不是"CMake版本错误",是"没有CMake"错误,所以使用apt install cmake!
但他们是一个cmake问题,
pgxnclient install madlib
INFO: best version: madlib 1.10.0
INFO: saving /tmp/tmpspQ3zf/madlib-1.10.0.zip
INFO: unpacking: /tmp/tmpspQ3zf/madlib-1.10.0.zip
INFO: running configure
-- The C compiler identification is GNU 5.4.0
-- The CXX compiler identification is GNU 5.4.0
-- Check for working C compiler: /usr/bin/gcc
-- Check for working C compiler: /usr/bin/gcc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /usr/bin/g++
-- Check for working CXX compiler: /usr/bin/g++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Could NOT find Boost
-- No sufficiently recent version (>= 1.47) of Boost was found. Will download.
-- Found PythonInterp: /usr/bin/python (found version "2.7.12")
CMake Error at src/ports/postgres/cmake/FindPostgreSQL.cmake:161 (message):
Found pg_config ("/usr/bin/pg_config"), but pg_config.h file not present in
the server include dir (/usr/include/postgresql/9.5/server).
Call Stack (most recent call first):
src/ports/postgres/cmake/PostgreSQLUtils.cmake:66 (find_package)
src/ports/postgres/CMakeLists.txt:360 (determine_target_versions)
-- Configuring incomplete, errors occurred!
See also "/tmp/tmpspQ3zf/madlib-1.10.0/build/CMakeFiles/CMakeOutput.log".
INFO: building extension
make -C build all
make[1]: Entering directory '/tmp/tmpspQ3zf/madlib-1.10.0/build'
make[1]: * No rule to make target 'all'. Stop.
make[1]: Leaving directory '/tmp/tmpspQ3zf/madlib-1.10.0/build'
Makefile:5: recipe for target 'all' failed
make: * [all] Error 2
ERROR: command returned 2: make PG_CONFIG=/usr/bin/pg_config all
Madlib 是 Postgres 的扩展。许多人通过pgxn.org分发他们的扩展,这就像Postgres 扩展的CPAN或Rubygems。所以安装它的命令是这样的:
pgxnclient install madlib
Run Code Online (Sandbox Code Playgroud)
之后,您可以CREATE EXTENSION madlib在任何您喜欢的数据库中输入。
请注意,您可能需要先安装一些依赖项,例如:
sudo apt-get install cmake postgresql-plpython-9.6 pgxnclient
Run Code Online (Sandbox Code Playgroud)
这就是 2013 年的链接告诉你的,对我来说它看起来仍然正确。(请注意,我将 plpython 从 9.1 更改为 9.6。)我尝试自己在 Postgres 9.5 + Ubuntu 14.04 上从 pgxn 安装 madlib,并且它有效。
至于为什么 madlib 的人不分发文件.deb:你可以随时询问他们,但 pgxn 是共享 Postgres 扩展的主流方式。这就像您的编程语言有一个包管理器一样。