Summary: | dev-python/matplotlib-2.0.2: ImportError: No module named externals | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Andrey Grozin <grozin> |
Component: | Current packages | Assignee: | Gentoo Science Related Packages <sci> |
Status: | RESOLVED OBSOLETE | ||
Severity: | normal | CC: | posting, python |
Priority: | Normal | ||
Version: | unspecified | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- |
Description
Andrey Grozin
2017-06-05 23:57:43 UTC
This only happens when upgrading from 1.5.3-r1 and with USE=doc. The build system relies on PYTHONPATH to locate the newly built and not merged matplotlib-2.0.2 libraries to build documentation. But in python PYTHONPATH does not override the site-packages. If 1.5.3-r1 in site-packages is not API-compatible with 2.0.2, this error is raised. There is no solution of python to override the site-packages. PYTHONSTARTUP only works for interactive sessions. PYTHONPATH is not designed for it. We are doomed. The only ways are: 1. have matplotlib-2.0.2 conflict with '<matplotlib-1.5.3-r1' 2. split off matplotlib[doc] as a separate package to depend on the same version of matplotlib. I managed to get around this by first uninstalling matplotlib-1.5.3, but then I was confronted with this bizarre error: Warning, treated as error: /var/tmp/portage/dev-python/matplotlib-2.0.2/work/matplotlib-2.0.2-python2_7/doc/devel/MEP/MEP12.rst:185:Footnote [2] is not referenced. Building HTML failed. * ERROR: dev-python/matplotlib-2.0.2::gentoo failed (compile phase): * (no error message) * * Call stack: * ebuild.sh, line 115: Called src_compile * environment, line 4387: Called distutils-r1_src_compile * environment, line 1293: Called _distutils-r1_run_common_phase 'python_compile_all' * environment, line 476: Called multibuild_foreach_variant 'distutils-r1_run_phase' 'python_compile_all' * environment, line 2838: Called _multibuild_run 'distutils-r1_run_phase' 'python_compile_all' * environment, line 2836: Called distutils-r1_run_phase 'python_compile_all' * environment, line 1281: Called python_compile_all * environment, line 3359: Called die * The specific snippet of code: * VARTEXFONTS="${T}"/fonts "${EPYTHON}" ./make.py --small html || die; * * If you need support, post the output of `emerge --info '=dev-python/matplotlib-2.0.2::gentoo'`, * the complete build log and the output of `emerge -pqv '=dev-python/matplotlib-2.0.2::gentoo'`. * The complete build log is located at '/var/log/portage/dev-python:matplotlib-2.0.2:20170915-143946.log'. * For convenience, a symlink to the build log is located at '/var/tmp/portage/dev-python/matplotlib-2.0.2/temp/build.log'. * The ebuild environment file is located at '/var/tmp/portage/dev-python/matplotlib-2.0.2/temp/environment'. * Working directory: '/var/tmp/portage/dev-python/matplotlib-2.0.2/work/matplotlib-2.0.2-python2_7/doc' * S: '/var/tmp/portage/dev-python/matplotlib-2.0.2/work/matplotlib-2.0.2' >>> Failed to emerge dev-python/matplotlib-2.0.2, Log file: >>> '/var/log/portage/dev-python:matplotlib-2.0.2:20170915-143946.log' * Messages for package dev-python/matplotlib-2.0.2: * ERROR: dev-python/matplotlib-2.0.2::gentoo failed (compile phase): * (no error message) * * Call stack: * ebuild.sh, line 115: Called src_compile * environment, line 4387: Called distutils-r1_src_compile * environment, line 1293: Called _distutils-r1_run_common_phase 'python_compile_all' * environment, line 476: Called multibuild_foreach_variant 'distutils-r1_run_phase' 'python_compile_all' * environment, line 2838: Called _multibuild_run 'distutils-r1_run_phase' 'python_compile_all' * environment, line 2836: Called distutils-r1_run_phase 'python_compile_all' * environment, line 1281: Called python_compile_all * environment, line 3359: Called die * The specific snippet of code: * VARTEXFONTS="${T}"/fonts "${EPYTHON}" ./make.py --small html || die; * * If you need support, post the output of `emerge --info '=dev-python/matplotlib-2.0.2::gentoo'`, * the complete build log and the output of `emerge -pqv '=dev-python/matplotlib-2.0.2::gentoo'`. * The complete build log is located at '/var/log/portage/dev-python:matplotlib-2.0.2:20170915-143946.log'. * For convenience, a symlink to the build log is located at '/var/tmp/portage/dev-python/matplotlib-2.0.2/temp/build.log'. * The ebuild environment file is located at '/var/tmp/portage/dev-python/matplotlib-2.0.2/temp/environment'. * Working directory: '/var/tmp/portage/dev-python/matplotlib-2.0.2/work/matplotlib-2.0.2-python2_7/doc' * S: '/var/tmp/portage/dev-python/matplotlib-2.0.2/work/matplotlib-2.0.2' I could only build matplotlib with USE=-doc. I guess we need to split off the docs if there is no way around this. Are there any other examples of ebuilds conflicting with previous versions of the same package? That doesn't seem sensible. File a new bug if problem persists. |