在 2020/12/19 下午6:20, n952162 写道:
...On 12/16/20 11:59 AM, Arve Barsnes wrote:
On Wed, 16 Dec 2020 at 11:34, Miles Malone <m.malone@homicidalteddybear.net> wrote:What's happening when you do emerge -avuDN --with-bdeps=y --backtrack=100 @world ? Giving portage the flexibility to solve it with some extra backtracking and increasing the scope to world might fix it, if not then we can revisit it?You should definitely try this first if you haven't.I have.
If the package was good enough before, it's likely still good enough. Where's the problem? I've (unsuccessfully) made these attempts: # */* PYTHON_TARGETS: python3_6 python3_7 python3_8 python3_9 #*/* PYTHON_TARGETS: -python3_6 -python3_7 python3_8 python3_9 # just have one set */* PYTHON_TARGETS: python3_8Is there any reason that you need to add py3.9 to all packages? If you need it for something special, add it to those packages only, and let portage take care of python targets for you instead of continuously trying these big hammers. Ideally you should have *no* python targets set manually in make.conf or USE files.I added it because I saw python3_9 in the PYTHON_TARGETS list for, e.g. jinja, and hoped that it would force compatibility. That is the question of the original post. But that was just one of many attempts.
The emerge command was: sudo emerge --verbose=y -vuUD --verbose-conflicts dev-python/setuptools dev-python/setuptools_scm dev-python/certifi dev-python/markupsafe dev-python/jinja dev-libs/libxml2Since it seems sphinx is installed with a different set of python targets than what you're trying to update, you should include sphinx in that emerge command to let it update to the same python targets and solve the conflict. Regards, ArveI tried adding that but it didn't help.
My latest command was:
time emerge \
-v \
--deep \
--update \
--changed-use \
--verbose-conflicts \
--keep-going \
--with-bdeps=y \
--changed-deps \
--backtrack=100 \
--newuse \
dev-python/setuptools dev-python/setuptools_scm dev-python/certifi dev-python/markupsafe dev-python/jinja dev-libs/libxml2 dev-python/sphinxBelow is the latest build output, with no PYTHON_TARGET specifications.
So what do you really want to know?
real 0m45.063s
user 0m44.602s
sys 0m0.399s
I don't think this output or any list participant has actually identified where the problem here is. In my original posting, the only difference causing the slot collision for jinja was that one had a PYTHON_TARGETS of 3-7 and the other of 3-8. I asked how to force it to the correct value, but if someone explained that to me, I didn't understand it.
I'm afraid I'm going to have to give up on gentoo, although I'm pretty heavily invested in it. I'm spending too many hours trying to maintain my systems and running into too many seemingly arbitrary roadblocks. I'm told I should update every week, but I can't get a system updated in a week.
Is there a fundamental goals issue here, when there's so much incompatibility between python3_{6,7,8,9}? Do packages really need to care? Are these versions so fundamentally different from each other, and programmers rely on those differences? Or, is this somebody's orderliness tic?
Well, for starters, why emerge(1) is not emerging...
Using jinja with python3.6 3.7.3.8 3.9 at the same time?
I don't know what jinja is and I just switched over to python3 myself. I'm not into subtleties like 6, 7, 8, or 9.
I do an emerge @world, it tells me I have slot collisions and
stops. Following Neil B.'s advice, I try to go through the
collisions and see what the differences are. jinja was a nice
example, because there was a collision of the same package with
itself! The only difference was the PYTHON_TARGET. I hoped
someone could explain how I could force equivalency in that simple
case.
Or want to keep it with 3.6 or some else?
The default PYTHON_TARGETS now change to 3_8 from 3_6. So when you update, many software need to change.
Yeah. That surprises me, actually.
If you want to change that targets, just follow https://wiki.gentoo.org/wiki/Project:Python/PYTHON_TARGETS
Maybe there no different or compatibility with it actually, but we need a correct dependency.
I'm trying to emerge. I'm not developing anything.
If you do not have enough time to update and config gentoo,
maybe you should try other Linux like Arch(No need to compile) and Debian(less update).
Yes, that's always an option. On the other hand, it might be possible to improve gentoo so that not only the very brightest people can use it. Source is kind of like a vaccine - if enough people use it, it can help prevent the spread of viruses.