根据官网https://multicorn.readthedocs.io/en/latest/installation.html的安装指南下载安装,关键信息:

Postgresql 9.1+

Postgresql development packages

Python development packages

python 2.6 or >= python 3.3 as your default python

If you are using PostgreSQL 9.1, you should use the 0.9.1 release.

If you are using PostgreSQL 9.2 or superior, you should use the 1.0.0 series. (Currently 1.0.1).

    • 问题1:libpython3.5m.a(abstract.o): relocation R_X86_64_32S against `_Py_NotImplementedStruct' can not be used when making a shared object; recompile with -fPIC

      • 1.分析:问题其实处在python上。默认方式安装的python生成的是libpython3.5m.a静态库。这里的recompile with -fPIC实际是要求使用的python版本提供动态库*.so.

问题2

    :python3.7安装命令(生成动态库*.so文件)

    • ./configure --prefix=/usr/local/  --enable-shared CFLAGS=-fPIC

      make clean

      make && sudo make install(make 是把源码包编译成二进制可执行文件,make install 即安装 && 表示前一个执行成功,执行后面的命令)

  • 安装完成后用python3.7检查,报错:error while loading shared libraries: libpython2.7.so.1.0: cannot open shared object file: No such file or directory,意思是说找不到*.so文件
    • 分析python可执行文件目录默认一般在/usr/bin 下,前面我们安装时的指定的目录是/usr/local/。执行时,linux会到/etc/ld.so.conf文件里面的路径需找需要的*.so文件,并且修改后需要运行ldconfig立即生效。使用ldconfig -v 可以查看目前有效路径。因此我们需要在ld.so.conf中加入声明/usr/local/lib 才能找到libpython2.7.so.1.0文件
  • python使用补充说明
    • 不同bin路径下多个python并存时调用顺序。如果两个目录下有相同的可执行程序python,谁优先执行受到PATH环境变量的影响,/usr/bin下面的都是系统预装的可执行程序,会随着系统升级而改变。/usr/local/bin目录是给用户放置自己的可执行程序的地方,推荐放在这里,不会被系统升级而覆盖同名文件。路径在前面的先被执行

      echo $PATH

      /usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin

      /usr/lib64/qt-3.3/bin:/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/sbin:/home/dean/bin

      这里/usr/local/bin优先于/usr/bin, 一般都是如此。

    • 同一路径下多个python版本时,设置默认版本。

      # update-alternatives --install /usr/local/bin/python python /usr/local/bin/python2.7 1

      # update-alternatives --install /usr/local/bin/python python /usr/local/bin/python3.5 0

      # update-alternatives --install /usr/local/bin/python python /usr/local/bin/python3.7 3

    • 修改默认版本

      update-alternatives --config python

  • 到这里就可以顺利安装Multicorn啦,感谢认真总结的自己。

Posggresql插件Multicorn安装问题总结的更多相关文章

  1. Sublime Text3下的markdown插件的安装及配置

    Sublime Text3下的markdown插件的安装及配置 安装准备--安装Package Control 安装MarkdownEditing 安装Markdown Preview或OmniMar ...

  2. [moka同学收藏]Vim升华之树形目录插件NERDTree安装图解

    无意中看到实验室的朋友使用的vim竟然能在左边显示树形目录,感觉很方便,这样子文件夹有什么文件一目了然.她说是一个插件叫NERDTree,安装执行后的效果如下,不是你想要的效果就别安了.我的系统是Ub ...

  3. iOS 开发:利用第三方插件来安装CoCoapods

    引言:通过上一篇博客我们知道了怎么样去通过终端来安装CoCoapods,这一篇我们着重与用第三方插件来安装CoCoapods: 1. 首先在提下链接下载插件 https://github.com/ka ...

  4. Vim升华之树形目录插件NERDTree安装图解

    来源:CSDN 作者:mybelief321 无意中看到实验室的朋友使用的vim竟然能在左边显示树形目录,感觉很方便,这样子文件夹有什么文件一目了然.他说是一个插件叫NERDTree,安装执行后的效果 ...

  5. elasticsearch5.0集群+kibana5.0+head插件插件的安装

    elasticsearch5.0集群+kibana5.0+head插件插件的安装 es集群的规划: 两台16核64G内存的服务器: yunva_etl_es1  ip:1.1.1.1 u04es01. ...

  6. javascript检测ActiveX插件是否安装/启用

    本文主要提供在IE浏览器下检测ActiveX插件安装/启用的状态. 在一些应用开发中,需要用到一些第三方提供的ActiveX插件,如Flash插件. 为了在未安装插件的浏览器显示友好的提示,需要用到主 ...

  7. sublime 插件的安装

    sublime(text3)插件的安装 之前一直对sublime插件的安装搞不懂,导致自己不能充分地运用它的便捷性.昨天仔细看了下百度,恍然大悟,一下子把必备的插件都装了: 对于插件的安装,首先要在s ...

  8. Java静态代码分析工具——FindBugs插件的安装与使用

    1 什么是FindBugs FindBugs 是一个静态分析工具,它检查类或者 JAR 文件,将字节码与一组缺陷模式进行对比以发现可能的问题.有了静态分析工具,就可以在不实际运行程序的情况对软件进行分 ...

  9. centos Flash Player插件的安装

    关于Flash Player插件的安装,其实Fedora官方Wiki文档已经给出了详细的说明,我这里再把重点提取一下: 1. 首先到Adobe Flash Plugin官方下载页面选择YUM for ...

  10. [原创]spring学习笔记:关于springsource-tool-suite插件的安装

    1.首先我们得确定自己使用的eclipes的版本,具体方式:打开eclipes > help > About Eclipes > 点击eclipes的logo > 查看ecli ...

随机推荐

  1. ORM框架——Dapper

    1.什么是ORM ORM(Object Relational Mapping)对象关系映射,是一种为了解决面向对象与关系数据库存在的互不匹配的现象的技术,用于实现面向对象编程语言里不同类型系统的数据之 ...

  2. VMware-实用网站

    二进制包的获取方式 ftp://ftp.redhat.com推荐网站  www.rpmfind.net相应的官方网站http://www.mysql.com

  3. 前端 ArrayBuffer 与 Blob 互转

    我们在使用ajax向后端发送请求时,responseType可以设置返回数据的格式,它支持的格式有"text"."arraybuffer"."blob ...

  4. pgsql计算占比

    SELECT len/sum(len)over(partition by road_id) param from road_jcpd_section

  5. 题解[LuoguP6222]「P6156简单题」加强版

    题解[LuoguP6222]「P6156简单题」加强版 加强版很好地体现了这个题的真正价值.(当然是指卡常 本题解给出了本题更详尽的推倒导和思考过程,思路与 CYJian 的类似,具体式子的个别地方换 ...

  6. 081_Introducing trigger handler class

    案例分析: 我们对一个Object写多个独立得Trigger. 但最终这不是最好的做法. 在Salesforce中,只为每个SObject设置一个触发器总是好的. 原因:每个独立触发器的执行顺序始终未 ...

  7. SVN 提交失败 Unexpected HTTP status 200 'OK' on 'PUT' request to

    提交SVN 时 提示  Commit Failed  Unexpected  HTTP status 200 'OK' on 'PUT' request to 旧的文件在SVN 上也无法删除,删除文件 ...

  8. 网络爬虫Python(一)

    1.爬取页面,打印页面信息 1 import requests 2 3 # get请求 4 response_get=requests.get("https://www.baidu.com& ...

  9. Hive基本概念

    Hive Hive的相关概念 Hive的架构图 用户接口:包括 CLI.JDBC/ODBC.WebGUI.其中,CLI(command line interface)为shell命令行:Hive中的T ...

  10. 图片上传插件WebUploader的坑

    需要上传图片的一个操作选择了WebUploader这个插件来实现,具体的实现过程如下. js代码: 1.引入js.css文件: <script type="text/javascrip ...