• 服务器上启动pip报错问题


    服务器上想用pip3安装个pandas跑程序。结果一直报错:

    Traceback (most recent call last):
      File "/usr/bin/pip3", line 8, in <module>
        from pip import main
      File "/usr/lib/python3.6/site-packages/pip/__init__.py", line 42, in <module>
        from pip.utils import get_installed_distributions, get_prog
      File "/usr/lib/python3.6/site-packages/pip/utils/__init__.py", line 27, in <module>
        from pip._vendor import pkg_resources
      File "/usr/lib/python3.6/site-packages/pip/_vendor/pkg_resources/__init__.py", line 35, in <module>
        import plistlib
      File "/usr/lib64/python3.6/plistlib.py", line 65, in <module>
        from xml.parsers.expat import ParserCreate
      File "/usr/lib64/python3.6/xml/parsers/expat.py", line 4, in <module>
        from pyexpat import *
    ImportError: /usr/lib64/python3.6/lib-dynload/pyexpat.cpython-36m-x86_64-linux-gnu.so: undefined symbol: XML_SetHashSalt
    

    参考文章:https://stackoverflow.com/questions/63414448/pip3-throws-undefined-symbol-xml-sethashsalt

    解决方案:在命令行里敲 LD_LIBRARY_PATH=/lib64/:$PATH 。pip3可以正常启动。

    -----------------------------------------分割线------------------------------------------

    在后续的使用中,发现每次xshell连上服务器后,依旧会报上面的错,重新输入上述指令后,才可以正常使用。

    其原因见这里:https://www.cnblogs.com/trying/archive/2013/06/07/3123577.html

    LD_LIBRARY_PATH变量是临时设置的,因此每次断开sh连接后,设定失效,需要重新设定。

    这里选用的方法是:

    1. 打开~/.bashrc文件
    2. 写入
    LD_LIBRARY_PATH=/lib64/:$PATH
    

    这里没有使用文章中提到的export,我对export的必要性不明了。便写入了前文中的指令。

    不过不写export好像没有效果,我后面找时间测一测

    总结一下,服务器上报undefined symbol: XML_SetHashSalt错时,很大可能是因为LD_LIBRARY_PATH变量不包含扩展包的路径。因此需要设定该变量。又每次断开重连服务器时,该变量还原,因此需要反复设定该变量。而~/.bashrc文件中写入的指令在每次启动sh时都会自动执行,因此将设定环境变量的指令写入此文件中,后面再连服务器跑脚本时,就没再报过该错误。

  • 相关阅读:
    oracle sql日期比较
    rlwrap真是一个好东西
    Dataguard 归档丢失处理
    oracle latch工作原理
    Latch free等待事件
    Redhat Enterprise Linux 5 安装 Oracle 10g release 2
    oracle 日期问题
    Oracle自动存储管理 ASMLib的支持变化
    [官方文档] oracle官方文档总汇(9i,10g,11gR1, 11gR2)
    实时分布式搜索引擎比较(senseidb、Solr、elasticsearch)
  • 原文地址:https://www.cnblogs.com/kang-mei-208/p/14077442.html
Copyright © 2020-2023  润新知