Default python /usr/bin/python instead of /usr/local/bin/python

ε祈祈猫儿з 提交于 2021-02-07 03:26:31

问题


I have both python2.6 and python2.7 installed in my CentOS box. python2.6 is installed at /usr/bin/python and i have installed python2.7 from source at location /usr/local/bin/python

after the installation my default python is changed to python2.7 instead of pythn2.6 at /usr/bin, I want to use python 2.6 at /usr/bin/python. I have tried following things already nothing worked.

  1. I have created symlink and made it point to python 2.6 at /usr/bin
  2. I have modified my default python path in .bash_profile and but that still doesn't work

Please let me know how can i have python 2.7 installed along with 2.6 installed and python 2.6 as my default version. I have the same thing working with my arch linux box, but this doesn't work with my centos box.

Attaching my .bash_profile,

# .bash_profile

export _BASH_PROFILE=1

# Get the aliases and functions
if [ -z "$_BASHRC" ]; then
        . ~/.bashrc
fi

unset _BASH_PROFILE

# User specific environment and startup programs

PATH=$PATH:$HOME/bin
BASH_ENV=$HOME/.bashrc
USERNAME=""

export USERNAME BASH_ENV PATH

export user=$(/usr/bin/whoami)
export WK_PORT=8086
export WK_PATH=ADC

# For DEV accounts change PYDOC_PORT value to 7400 + webkit number. For
# example WK23 would be port number 7423
export PYDOC_PORT=7464


alias serve="python -m SimpleHTTPServer"


unset _BASH_PROFILE

# User specific environment and startup programs

PATH=$PATH:$HOME/bin
BASH_ENV=$HOME/.bashrc
USERNAME=""

export USERNAME BASH_ENV PATH

export user=$(/usr/bin/whoami)
export WK_PORT=8086
export WK_PATH=ADC

# For DEV accounts change PYDOC_PORT value to 7400 + webkit number. For
# example WK23 would be port number 7423
export PYDOC_PORT=7464


alias serve="python -m SimpleHTTPServer"


PYTHONPATH="$PYTHONPATH:/usr/bin/python"

回答1:


I had the same problem. The following command fixed it:

sudo ln -sf /usr/bin/python /usr/local/bin/python

This will make a symbolic link from /usr/local/bin/python --> /usr/bin/python. Referred from here




回答2:


You could use alias to point the command python at the 2.6 folder, and python27 to point at 2.7 like so:

In .bash_profile add:

alias python=/usr/bin/python/<python executable name>



回答3:


Thanks to @brett-beatty i have referred /usr/local/bin/python symlink to /usr/bin. The compiler looks into /usr/local/bin goes to /usr/bin and uses the correct version also keeps it consistent.




回答4:


softwarecollections.org is a default way to add a second version of a language, db, etc. You can then set the default. It's for RHEL 6/7 and CentOS 6/7.

See https://www.softwarecollections.org/en/about/

See https://www.softwarecollections.org/en/scls/?search=python



来源:https://stackoverflow.com/questions/45553065/default-python-usr-bin-python-instead-of-usr-local-bin-python

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!