根据官网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. 2023 年 CCF 春季测试赛模拟赛 - 2

    T1 分治,\(a^b + \dots + 1 = (a^{\lfloor\frac{b}{2}\rfloor} + \dots + 1) \times (a^{\lfloor\frac{b}{2}\ ...

  2. Word11 工程学院讲师论文office真题

    1.根据题目一的要求,打开素材文件,点击[文件]-[另存为],选择[当前文件夹],命名为Word. 2.根据题目二的要求,根据提供的参考样式,打开Word的文档,在[布局]里点击[页面设置]的右下角, ...

  3. More exceptional c++读书笔记【附高清PDF下载】

    Part1我是在读完Scott Meyers的<Effective c++>之后才读到这本书的.能够讨论特定的主题而不是将一门语言作为一个整体来看待是我理解c++的首选方式,所以Sutte ...

  4. 使用python往已有内容的PDF文件写入数据

    只使用reportlab库好像没法在已经有内容的PDF页面中写入数据,只能生成一个空的PDF文件再写入.所以这里我是配合pdfrw库来实现的.具体见示例 from reportlab.pdfgen.c ...

  5. 别再写一堆的 for 循环了!Java 8 中的 Stream 轻松遍历树形结构,是真的牛逼

    实体类:Menu.java /** * Menu * * @author lcry */ @Data @Builder public class Menu { /** * id */ public I ...

  6. python + QML程序中调用WebView后打包

    QML中如果加入了WebView控件,在用pyinstaller打包时不会自动导入,从而导致打包出的程序运行报错,no WebView plugin found,此时需要手动将WebView控件复制到 ...

  7. org.aspectj.lang不存在,引入失败。

    问题:添加了依赖,或引入了jar包但是写aspect类时无法引入 解决办法:

  8. 一种改进后的turf.idw算法

    turf 是Advanced geospatial analysis geojson data in javascript. 官网:http://turfjs.org/ 针对github 中的源码. ...

  9. TypeScript 学习之路

    一.下载与安装 二.变量与数据类型 三.函数 四.类

  10. npm不是内部或外部命令,也不是可运行的程序的解决办法

    通常是nodejs没有安装导致 转载https://segmentfault.com/a/1190000023390756 1.Node.js简介 Node.js 是一个基于 Chrome V8 引擎 ...