Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 572708 - dev-python/pbr fails to build due to missing dependencies
Summary: dev-python/pbr fails to build due to missing dependencies
Status: RESOLVED INVALID
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: AMD64 Linux
: Normal normal (vote)
Assignee: Matthew Thode ( prometheanfire )
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2016-01-23 17:43 UTC by Scott Ellis
Modified: 2016-03-08 20:22 UTC (History)
2 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
Build Log (build.log,12.03 KB, application/octet-stream)
2016-01-23 17:43 UTC, Scott Ellis
Details
emerge info (emerge_info.txt,5.35 KB, text/plain)
2016-01-23 17:43 UTC, Scott Ellis
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Scott Ellis 2016-01-23 17:43:15 UTC
Created attachment 423700 [details]
Build Log

Using emerge to update shows Samba 4.2.7 relies on dev-python/pbr.  Unfortunately, that fails in that it tries to pull in the 'docutils' module (which isn't installed).  If I install 'docutils', it then fails pulling in some other crazy thing (jinga? I can't recall now).

I see no use flag to control these, so not sure what the workaround is.

scotte@intrepid software % equery u dev-python/pbr
[ Legend : U - final flag setting for installation]
[        : I - package is installed with flag     ]
[ Colors : set, unset                             ]
 * Found these USE flags for dev-python/pbr-1.8.1-r1:
 U I
 - - python_targets_pypy      : Build with PyPy
 - - python_targets_pypy3     : Build with PyPy3
 + + python_targets_python2_7 : Build with Python 2.7
 - - python_targets_python3_3 : Build with Python 3.3
 + + python_targets_python3_4 : Build with Python 3.4
 - - python_targets_python3_5 : Build with Python 3.5
 - - test                     : Workaround to pull in packages needed to run with FEATURES=test. Portage-2.1.2 handles this
                                internally, so don't set it in make.conf/package.use anymore
Comment 1 Scott Ellis 2016-01-23 17:43:34 UTC
Created attachment 423702 [details]
emerge info
Comment 2 Scott Ellis 2016-01-24 20:12:20 UTC
Emerging...

dev-python/docutils
dev-python/jinja
dev-python/Babel

...lets pbr build successfully.

Don't think that's really what is intended, but it works. :-(
Comment 3 Matthew Thode ( prometheanfire ) archtester Gentoo Infrastructure gentoo-dev Security 2016-01-26 16:02:43 UTC
I don't see where the dependency is pulled in, I also don't see where pbr depends on these.  The only place docutils is mentioned is in builddoc.py, even then it'd in an except block.  The other deps mentioned are installed/used by pbr.
Comment 4 Scott Ellis 2016-01-26 18:04:12 UTC
(In reply to Matthew Thode ( prometheanfire ) from comment #3)
> I don't see where the dependency is pulled in, I also don't see where pbr
> depends on these.  The only place docutils is mentioned is in builddoc.py,
> even then it'd in an except block.  The other deps mentioned are
> installed/used by pbr.

I'm not at all familiar with Python, and especially not with it's modules, but I think pbr does depend on pysetuputils (?) or pip - maybe one of those is pulling them in on behalf of pbr?
Comment 5 Matthew Thode ( prometheanfire ) archtester Gentoo Infrastructure gentoo-dev Security 2016-01-26 19:24:25 UTC
It did depend on pip you could try 1.8.1-r1 as the dep was removed if you think that is the problem.
Comment 6 Torbjörn Lönnemark 2016-03-04 13:38:35 UTC
This is not a problem with the ebuild.

It's because the python installation has been broken by installing packages system-wide using pip.

The following code should always work and (I assume) return all the commands available on the system it's running on:

>>> import setuptools.dist
>>> setuptools.dist.Distribution().get_command_list()

Somehow, the files left by pip confuses setuptool to think that a package is available, when it is in fact not, causing the error in the provided build log.

Your best bet would be to clean up your python installation by removing files that are not owned by any installed package. You can use qfile from app-portage/portage-utils to list all such files.

In this case:

  find /usr/lib/python3.4/ -type f -exec qfile -o {} +
Comment 7 Matthew Thode ( prometheanfire ) archtester Gentoo Infrastructure gentoo-dev Security 2016-03-08 20:22:40 UTC
ok, closing this as invalid then