python 非root用户安装Python及Python模块

2020-10-23  本文已影响0人  千千罐

一、非root用户安装python模块

1.python安装的默认目录是$python/lib/python版本号/site-packages,比如本机中python 路径是/software/python3/Python-v3.7.0/bin/python3,那默认模块安装路径是/software/python3/Python-v3.7.0/lib/python3.7/site-packages,重点是设置安装目录。

2.往往没有root权限,我们需要将模块安装到指定目录,首先创建一个可读写目录,比如:

mkdir ~/python3_package
cd python3_package
mkdir bin
mkdir -p lib/python3.7/site-packages

3.下载模块安装包,一般官网下载安装包,一般是tar.gz 格式,官网地址,放到哪里都没关系,这里,我创建了 pkg 目录,存放所有下载的安装包。比如安装 pyfasta 模块。

mkdir -p pkg && cd pkg 
wget https://files.pythonhosted.org/packages/be/3f/794fbcdaaa2113f0a1d16a962463896c1a6bdab77bd63f33a8f16aae6cdc/pyfasta-0.5.2.tar.gz
tar -zxvf pyfasta-0.5.2.tar.gz
cd pyfasta-0.5.2    #进入解压目录
python3 setup.py install --prefix=~/python3_package  #一定注意这里的目录,设置为之前创建的目录

4.设置环境变量,将之前创建的目录加入到环境变量当中

vi ~/.bash_profile  #打开文件,添加以下内容
export PATH=$HOME/.local/bin:$HOME/bin:~/python3_package/bin:$PATH
export PYTHONPATH=~/python3_package/lib/python3.7/site-packages:$PYTHONPATH
source ~/.bash_profile

5.卸载模块

cd ~/python3_package
cd bin      #删除生成的对应文件
vi lib/python3.7/site-packages/easy-install.pth   #修改lib下 的这个文件去掉想要卸载的模块 .egg 那一行

6.批量安装模块

pip3 install -r requirements.txt #requirements.txt 列出需要安装的软件

cat requirements.txt
numpy>=1.14.0
scipy>=1.0.0
fastcluster
pandas>=0.22.0
matplotlib>=2.1.1
seaborn>=0.8.1

二、非root用户安装python3

1.下载软件包并解压

wget https://www.python.org/ftp/python/3.7.0/Python-3.7.0.tgz
tar -zxvf Python-3.7.0.tgz

2.创建一个空目录,存放安装文件

mkdir ~/Python-v3.7.0

3.安装

cd Python-3.7.0
./configure --prefix="../Python-v3.7.0"
#会出现以下提示:
If you want a release build with all stable optimizations active (PGO, etc),
please run ./configure --enable-optimizations
#或许重新运行以下命令:
./configure --prefix="../Python-v3.7.0" --enable-optimizations
#然后
make && make install

4.可能出现的安装错误

1)编译make && make install 编译时出现错误

warning: Clock skew detected. Your build may be incomplete
原因:机器系统时间与文件时间不一致
解决:更新所有文件的时间后重新编译
find . -type f | xargs -n 5 touch make clean   
make && make install
最终 是改了linux 的系统时间 才完成安装

2)缺少动态库时,添加路径到 LD_LIBRARY_PATH变量即可

#动态库查看
ldd ~/Python-v3.7.0/bin/python3
  1. 添加环境变量
export PATH=~/Python-v3.7.0/bin:$PATH
export LD_LIBRARY_PATH=~/lib/python3.7:$LD_LIBRARY_PATH
#export PYTHONPATH=~/Python-v3.7.0/lib/python3.7:$PYTHONPATH #可能不需要
上一篇 下一篇

猜你喜欢

热点阅读