Dealing with 2.7 and 3.3 installations
Daniel Braniss
danny at cs.huji.ac.il
Tue Jul 30 09:14:24 UTC 2013
> David, Daniel,
>
> just to take this to python@ and to clarify, what problems are still
> open for you:
>
> - bapt confirmed that the parallel installation of python itself from
> binary packages should work
> without any problem
> - Installation from the ports tree should work without problems
> - Installation of python modules from the ports tree basically works
> without problems (given that
> you set the correct make knobs), BUT can create tons of issues,
> when it comes to deinstallation,
> port dependency detection, etc.
>
> As per my understanding, you both mentioned issues with both, python
> itself and 3rd party packages.
> As said above, python itself should not be any problem. If you ran
> into any issue, please let python@
> know about it (ideally with a reproducible step-by-step description)
> or create a PR.
>
> Regarding the 3rd party modules, I am not sure about the pkg status.
> Maybe bapt can say a word or
> two about whether packages are (planned to or currently) built for
> different python versions or not.
> David, Daniel: if you are currently running into trouble with the 3rd
> party modules, please
> let us know, what your requirements are, so we can discuss different
> solutions top be applied to the
> ports tree and, where applicable, improved support for the pkg builds.
>
> Thanks and cheers
> Marcus
>
>
>
hi Marcus,
you are correct on most counts.
it's the make in ports that's problematic.
- no problem in installing all/any version of lang/python.
- the issue is with 3rd. party modules, and more specifically
when installing. Furthermore, most modules compile for all
versions of python, but installing them is the issue:
- if the module is installed, no matter what python
version, it will be deinstalled - unless FORCE_PKG_REGISTER=,
which prevents the deinstall issue
IMHO, the check for is installed does not correctly use PYTHON_VERSION
example:
/usr/local/bin/python -> python3.3
# cd /usr/ports/devel/py-setproctitle
# make install
===> Installing for py33-setproctitle-1.1.7
===> py33-setproctitle-1.1.7 depends on file: /usr/local/bin/python3.3 -
found
===> Generating temporary packing list
===> Checking if devel/py-setproctitle already installed
===> py33-setproctitle-1.1.7 is already installed <==== NOT TRUE
You may wish to ``make deinstall'' and install this port again
by ``make reinstall'' to upgrade it properly.
If you really wish to overwrite the old port of devel/py-setproctitle
without deleting it first, set the variable "FORCE_PKG_REGISTER"
in your environment or the "make install" command line.
*** [check-already-installed] Error code 1
Stop in /usr/ports/devel/py-setproctitle.
# ls -ls /usr/local/lib/python3.3/site-packages/
total 5
1 -r--r--r-- 1 root wheel 119 Jul 29 11:43 README
2 drwxr-xr-x 4 root wheel 14 Jul 28 14:00 psycopg2
3 -rw-r--r-- 1 root wheel 1883 Jul 28 14:00 psycopg2-2.5.1-py3.3.egg-info
# make {de,re}install
===> Deinstalling for devel/py-setproctitle
===> Deinstalling
Deinstallation has been requested for the following 1 packages:
py27-setproctitle-1.1.7 <==========!!!!
The deinstallation will free 31 kB
[1/1] Deleting py27-setproctitle-1.1.7... done
===> Installing for py33-setproctitle-1.1.7
===> py33-setproctitle-1.1.7 depends on file: /usr/local/bin/python3.3 -
found
===> Generating temporary packing list
...
- somehwere it should be mentioned:
- how to set the default python
i.e: usr/local/bin/python is a symlink, as is python-config
- the bsd.python.mk is very confusing, and has some errors
at the moment my goal is to have python 2.7 as default, and 3.2/3.3
as optional, and using PYTHON_VERSION= and FORCE_PKG_REGISTER= ie:
make PYTHON_VERSION=3.3 FORCE_PKG_REGISTER= clean install
is a workaround
More information about the freebsd-python
mailing list