I'm trying to install python3.3.5 on /home/myUser/XX, where home is located on a separate partition. I'm relatively new to Linux and have only basic knowledge about installing packages on my own, without the synaptic package Manager.

Here is what I did: I followed the instructions from Sergey in this thread. I also used the similar explanation from James Nichsolson at this webpage

Everything worked fine so far except this part:

Some nice touches to install a py command by creating a symlink:

mkdir ~/bin
ln -s /opt/python3.3/bin/python3.3 ~/bin/py

As I understand it, this is to make python3.3 execuable via the terminal at any place? So if I write python3.3 it opens.

my paths are bit different from the ones in Sergeys description: path of python installation:


my ./configure command was therefore:

./configure --prefix=/home/metin/python/python3.3.5

my command to create the link was:

 ln -s /home/metin/python/python3.3.5/bin/python3.3


after I do this and when I type python3 in my terminal it says this programm is not installed, so something went wrong with creating the link?

Further Question:

Where is the difference between creating such a link and adding entries to $PATH? As I understand it Ubuntu can access all programs stored in $PATH, right? Why should'nt I just ad .../python3.3.5 to $PATH? So when do I use ln(links) and when do I add stuff to $PATH.

If I want to add dirs to $PATH how do I do that easy? I found some explanations on the internet but I'm confused. There is the file .bashrc in my /home dir. Is that the one were I add such dirs? Because there is also /etc/bash.bashrc and I remember adding

PATH=/home/metin/texlive/2012/bin/x86_64-linux:$PATH; export PATH
MANPATH=/home/metin/texlive/2012/texmf/doc/man:$MANPATH; export MANPATH
INFOPATH=/home/metin/texlive/2012/texmf/doc/info:$INFOPATH; export INFOPATH

when I installed texlive

since this questions are related I found it logic to put it all in one thread. Please let me know if I should rather make more than one post.

  • Let's start from the beginning first: Why do you want to install python3 manually when you have sudo apt-get install python3? – jobin Mar 13 '14 at 12:33
  • The synaptics tells me that the newest version available for autom. install is 3.2.x. I want to have 3.3.5 so I thought the only way will be to do it manualy (maybe 12.04 LTS not released 3.3.5 yet?) -> Furthermore I need to learn Linux/handling Linux, so anything is a good exercise :-) – suburbian Mar 13 '14 at 12:49

Try this:

sudo ln -s /home/metin/python/python3.3.5/bin/python3.3 /usr/bin/python3.3.5

Not sure if your home path is correct, so if the command above fails you must symlink the binary located in your home folder to /usr/bin.

| improve this answer | |
  • to get started with python I now installed 3.2 via synaptics (package python3) will this interfere with my own installed python 3.3.5 (because in the 3.3.5/bin dir the execs name is also python3) – suburbian Mar 13 '14 at 12:54
  • Probably no, there are many versions that can be installed at once in your system. But you can test it typing python -V in console and see the version – muniz95 Mar 13 '14 at 13:02
  • optimal case would be: I type python3.3.5 in terminal (anywhere) and it fires up python3.3.5 which I installed myself. Because right now it would fire up the synaptics python3 (python3.2) when I type python3. When I type python -V it gives me the 2.7 Version – suburbian Mar 13 '14 at 13:04
  • I forgot you are using python3, sorry. But if you symlinked your home python as python3.3.5 there is no problem, python3 installed via synaptic will work properly – muniz95 Mar 13 '14 at 13:11
  • ok it works, the original idea to do this at /home (diff partition), that I could install ubuntu new and keep everything on my /home partition. If I do this now, the links will be dead after reinstall right? – suburbian Mar 13 '14 at 13:18

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.