Jump to content
  • 0
ainsley31415926

1.4 upgrade cant get rid of python 3.6

Question

Upgraded from 1.3 to 1.4, followed each step.

Now python is weird:

 

eselect python update
Switching to python3.7

 eselect python list
Available Python interpreters, in order of preference:
  [1]   python3.7
  [2]   python3.6
  [3]   python2.7

 emerge -C =dev-lang/python-3.6*
 * This action can remove important packages! In order to be safer, use
 * `emerge -pv --depclean <atom>` to check for reverse dependencies before
 * removing packages.
 * Not unmerging package dev-lang/python-3.6.8 since there is no valid reason
 * for Portage to unmerge currently used Python interpreter.

 

emerge -pv --depclean =dev-lang/python-3.6*

Calculating dependencies... done!
  dev-lang/python-3.6.8 pulled in by:
    @system requires dev-lang/python


...

Share this post


Link to post
Share on other sites

6 answers to this question

Recommended Posts

  • 0
On 10/22/2019 at 3:41 AM, jhan said:

That can depend on many factors.

Did you set PYTHON_SINGLE_TARGET or PYTHON_TARGETS somewhere?

There are also some programs that still don't have the USE flag for python3_7 or just don't support it yet. But if your 'emerge -pv --depclean =dev-lang/python-3.6* ' output does not show more packages, that should not be the case.

This was the problem that I ran into during my upgrade.  PYTHON_TARGETS was still set in /etc/portage/make.conf so 3.6 was still showing as a dependency.  It made quite a mess.

 

Share this post


Link to post
Share on other sites
  • 0

as noted earlier and by drobbins....

eselect python set python3.7

eselect python cleanup

these steps were in the upgrade guide, someone has edited out the selection of the new default interpreter...eselect python set python3.7

Share this post


Link to post
Share on other sites
  • 0

I have this again.

eselect python set python3.7

 eselect python cleanup

eselect python list

  [1]   python3.7
  [2]   python3.6
  [3]   python2.7 (fallback)

 emerge -C =dev-lang/python-3.6*

 * This action can remove important packages! In order to be safer, use
 * `emerge -pv --depclean <atom>` to check for reverse dependencies before
 * removing packages.
 * Not unmerging package dev-lang/python-3.6.8 since there is no valid reason
 * for Portage to unmerge currently used Python interpreter.

I believe I am following the instructions...

 

Share this post


Link to post
Share on other sites
  • 0

emerge --info 

Read the output to verify python3_6 is not included in the USE flag variables PYTHON_SINGLE_TARGET or PYTHON_TARGETS

This is what I have on my system with no python3_6 installed. 

PYTHON_SINGLE_TARGET="python3_7" PYTHON_TARGETS="python3_7 python2_7"

If you see python3_6 then you have set an override for it in /etc/portage/repos.conf or some other location that needs to be removed.

After you remove without rebooting ego sync followed by emerge -avuDN @world will trigger a rebuild of any modules that were built against python3_6 to be rebuilt against python3_7 if it's supported. If you have modules only supported by python3_6 you will either remove the modules and python3_6 or leave both installed.

 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...