View previous topic :: View next topic |
Author |
Message |
jroth n00b

Joined: 08 Aug 2017 Posts: 22
|
Posted: Fri Dec 01, 2017 7:48 am Post subject: matplotlib wont emerge (compiler segfaults) after GCC update |
|
|
I just updated to GCC 6.4.0, and when I tried to recompile the whole system I discovered matplotlib doesn't emerge correctly anymore. Here's the complete emerge log: https://pastebin.com/01haFt0G
Here's the last few lines, which probably contain the relevant error:
Code: | x86_64-pc-linux-gnu-g++ -march=bdver2 -O2 -pipe -fno-strict-aliasing -DNDEBUG -fPIC -DPY_ARRAY_UNIQUE_SYMBOL=MPL_matplotlib_ft2font_ARRAY_API -DPYCXX_ISO_CPP_LIB=1 -I/usr/lib64/python2.7/site-packages/numpy/core/include -I/usr/lib64/python2.7/site-packages/numpy/core/include -I/usr/include/freetype2 -I. -Iextern -I/usr/include/python2.7 -c extern/CXX/IndirectPythonInterface.cxx -o /var/tmp/portage/dev-python/matplotlib-1.4.3/work/matplotlib-1.4.3-python2_7/build/temp.linux-x86_64-2.7/extern/CXX/IndirectPythonInterface.o
x86_64-pc-linux-gnu-g++ -march=bdver2 -O2 -pipe -fno-strict-aliasing -DNDEBUG -fPIC -DPY_ARRAY_UNIQUE_SYMBOL=MPL_matplotlib_ft2font_ARRAY_API -DPYCXX_ISO_CPP_LIB=1 -I/usr/lib64/python2.7/site-packages/numpy/core/include -I/usr/lib64/python2.7/site-packages/numpy/core/include -I/usr/include/freetype2 -I. -Iextern -I/usr/include/python2.7 -c extern/CXX/cxxsupport.cxx -o /var/tmp/portage/dev-python/matplotlib-1.4.3/work/matplotlib-1.4.3-python2_7/build/temp.linux-x86_64-2.7/extern/CXX/cxxsupport.o
x86_64-pc-linux-gnu-gcc -march=bdver2 -O2 -pipe -fno-strict-aliasing -DNDEBUG -fPIC -DPY_ARRAY_UNIQUE_SYMBOL=MPL_matplotlib_ft2font_ARRAY_API -DPYCXX_ISO_CPP_LIB=1 -I/usr/lib64/python2.7/site-packages/numpy/core/include -I/usr/lib64/python2.7/site-packages/numpy/core/include -I/usr/include/freetype2 -I. -Iextern -I/usr/include/python2.7 -c extern/CXX/cxxextensions.c -o /var/tmp/portage/dev-python/matplotlib-1.4.3/work/matplotlib-1.4.3-python2_7/build/temp.linux-x86_64-2.7/extern/CXX/cxxextensions.o
x86_64-pc-linux-gnu-g++ -shared -Wl,-O1 -Wl,--as-needed -march=bdver2 -O2 -pipe -fno-strict-aliasing -DNDEBUG /var/tmp/portage/dev-python/matplotlib-1.4.3/work/matplotlib-1.4.3-python2_7/build/temp.linux-x86_64-2.7/src/ft2font.o /var/tmp/portage/dev-python/matplotlib-1.4.3/work/matplotlib-1.4.3-python2_7/build/temp.linux-x86_64-2.7/src/mplutils.o /var/tmp/portage/dev-python/matplotlib-1.4.3/work/matplotlib-1.4.3-python2_7/build/temp.linux-x86_64-2.7/extern/CXX/cxx_extensions.o /var/tmp/portage/dev-python/matplotlib-1.4.3/work/matplotlib-1.4.3-python2_7/build/temp.linux-x86_64-2.7/extern/CXX/IndirectPythonInterface.o /var/tmp/portage/dev-python/matplotlib-1.4.3/work/matplotlib-1.4.3-python2_7/build/temp.linux-x86_64-2.7/extern/CXX/cxxsupport.o /var/tmp/portage/dev-python/matplotlib-1.4.3/work/matplotlib-1.4.3-python2_7/build/temp.linux-x86_64-2.7/extern/CXX/cxxextensions.o -L/usr/lib64 -lfreetype -lstdc++ -lm -lpython2.7 -o /var/tmp/portage/dev-python/matplotlib-1.4.3/work/matplotlib-1.4.3-python2_7/build/build/lib/matplotlib/ft2font.so
building 'matplotlib._png' extension
x86_64-pc-linux-gnu-g++ -march=bdver2 -O2 -pipe -fno-strict-aliasing -DNDEBUG -fPIC -DPY_ARRAY_UNIQUE_SYMBOL=MPL_matplotlib__png_ARRAY_API -DPYCXX_ISO_CPP_LIB=1 -I/usr/lib64/python2.7/site-packages/numpy/core/include -I/usr/lib64/python2.7/site-packages/numpy/core/include -I/usr/include/libpng16 -I. -Iextern -I/usr/include/python2.7 -c src/_png.cpp -o /var/tmp/portage/dev-python/matplotlib-1.4.3/work/matplotlib-1.4.3-python2_7/build/temp.linux-x86_64-2.7/src/_png.o
In file included from /usr/lib64/python2.7/site-packages/numpy/core/include/numpy/ndarraytypes.h:1781:0,
from /usr/lib64/python2.7/site-packages/numpy/core/include/numpy/ndarrayobject.h:18,
from /usr/lib64/python2.7/site-packages/numpy/core/include/numpy/arrayobject.h:4,
from src/_png.cpp:28:
/usr/lib64/python2.7/site-packages/numpy/core/include/numpy/npy_1_7_deprecated_api.h:15:2: warning: #warning "Using deprecated NumPy API, disable it by " "#defining NPY_NO_DEPRECATED_API NPY_1_7_API_VERSION" [-Wcpp]
#warning "Using deprecated NumPy API, disable it by " \
^~~~~~~
In file included from src/_png.cpp:31:0:
src/file_compat.h:31:0: warning: "npy_fseek" redefined
#define npy_fseek fseek
In file included from /usr/lib64/python2.7/site-packages/numpy/core/include/numpy/ndarraytypes.h:4:0,
from /usr/lib64/python2.7/site-packages/numpy/core/include/numpy/ndarrayobject.h:18,
from /usr/lib64/python2.7/site-packages/numpy/core/include/numpy/arrayobject.h:4,
from src/_png.cpp:28:
/usr/lib64/python2.7/site-packages/numpy/core/include/numpy/npy_common.h:127:0: note: this is the location of the previous definition
#define npy_fseek fseeko
In file included from src/_png.cpp:31:0:
src/file_compat.h:32:0: warning: "npy_ftell" redefined
#define npy_ftell ftell
In file included from /usr/lib64/python2.7/site-packages/numpy/core/include/numpy/ndarraytypes.h:4:0,
from /usr/lib64/python2.7/site-packages/numpy/core/include/numpy/ndarrayobject.h:18,
from /usr/lib64/python2.7/site-packages/numpy/core/include/numpy/arrayobject.h:4,
from src/_png.cpp:28:
/usr/lib64/python2.7/site-packages/numpy/core/include/numpy/npy_common.h:132:0: note: this is the location of the previous definition
#define npy_ftell ftello
src/_png.cpp: In member function ‘Py::Object _png_module::write_png(const Py::Tuple&)’:
src/_png.cpp:103:12: internal compiler error: Segmentation fault
Py::Object _png_module::write_png(const Py::Tuple& args)
^~~~~~~~~~~
Please submit a full bug report,
with preprocessed source if appropriate.
See <https://bugs.gentoo.org/> for instructions.
error: command 'x86_64-pc-linux-gnu-g++' failed with exit status 1
* ERROR: dev-python/matplotlib-1.4.3::gentoo failed (compile phase):
* (no error message)
*
* Call stack:
* ebuild.sh, line 124: Called src_compile
* environment, line 4202: Called distutils-r1_src_compile
* environment, line 1233: Called _distutils-r1_run_foreach_impl 'python_compile'
* environment, line 441: Called python_foreach_impl 'distutils-r1_run_phase' 'python_compile'
* environment, line 3635: Called multibuild_foreach_variant '_python_multibuild_wrapper' 'distutils-r1_run_phase' 'python_compile'
* environment, line 2667: Called _multibuild_run '_python_multibuild_wrapper' 'distutils-r1_run_phase' 'python_compile'
* environment, line 2665: Called _python_multibuild_wrapper 'distutils-r1_run_phase' 'python_compile'
* environment, line 800: Called distutils-r1_run_phase 'python_compile'
* environment, line 1226: Called python_compile
* environment, line 3164: Called wrap_setup 'distutils-r1_python_compile'
* environment, line 5040: Called distutils-r1_python_compile 'build' '--build-lib=/var/tmp/portage/dev-python/matplotlib-1.4.3/work/matplotlib-1.4.3-python2_7/build/build/lib'
* environment, line 1101: Called esetup.py 'build' 'build' '--build-lib=/var/tmp/portage/dev-python/matplotlib-1.4.3/work/matplotlib-1.4.3-python2_7/build/build/lib'
* environment, line 1713: Called die
* The specific snippet of code:
* "${@}" || die "${die_args[@]}";
*
* If you need support, post the output of `emerge --info '=dev-python/matplotlib-1.4.3::gentoo'`,
* the complete build log and the output of `emerge -pqv '=dev-python/matplotlib-1.4.3::gentoo'`.
* The complete build log is located at '/var/tmp/portage/dev-python/matplotlib-1.4.3/temp/build.log'.
* The ebuild environment file is located at '/var/tmp/portage/dev-python/matplotlib-1.4.3/temp/environment'.
* Working directory: '/var/tmp/portage/dev-python/matplotlib-1.4.3/work/matplotlib-1.4.3-python2_7'
* S: '/var/tmp/portage/dev-python/matplotlib-1.4.3/work/matplotlib-1.4.3'
>>> Failed to emerge dev-python/matplotlib-1.4.3, Log file:
>>> '/var/tmp/portage/dev-python/matplotlib-1.4.3/temp/build.log'
* Messages for package dev-python/matplotlib-1.4.3:
* ERROR: dev-python/matplotlib-1.4.3::gentoo failed (compile phase):
* (no error message)
*
* Call stack:
* ebuild.sh, line 124: Called src_compile
* environment, line 4202: Called distutils-r1_src_compile
* environment, line 1233: Called _distutils-r1_run_foreach_impl 'python_compile'
* environment, line 441: Called python_foreach_impl 'distutils-r1_run_phase' 'python_compile'
* environment, line 3635: Called multibuild_foreach_variant '_python_multibuild_wrapper' 'distutils-r1_run_phase' 'python_compile'
* environment, line 2667: Called _multibuild_run '_python_multibuild_wrapper' 'distutils-r1_run_phase' 'python_compile'
* environment, line 2665: Called _python_multibuild_wrapper 'distutils-r1_run_phase' 'python_compile'
* environment, line 800: Called distutils-r1_run_phase 'python_compile'
* environment, line 1226: Called python_compile
* environment, line 3164: Called wrap_setup 'distutils-r1_python_compile'
* environment, line 5040: Called distutils-r1_python_compile 'build' '--build-lib=/var/tmp/portage/dev-python/matplotlib-1.4.3/work/matplotlib-1.4.3-python2_7/build/build/lib'
* environment, line 1101: Called esetup.py 'build' 'build' '--build-lib=/var/tmp/portage/dev-python/matplotlib-1.4.3/work/matplotlib-1.4.3-python2_7/build/build/lib'
* environment, line 1713: Called die
* The specific snippet of code:
* "${@}" || die "${die_args[@]}";
*
* If you need support, post the output of `emerge --info '=dev-python/matplotlib-1.4.3::gentoo'`,
* the complete build log and the output of `emerge -pqv '=dev-python/matplotlib-1.4.3::gentoo'`.
* The complete build log is located at '/var/tmp/portage/dev-python/matplotlib-1.4.3/temp/build.log'.
* The ebuild environment file is located at '/var/tmp/portage/dev-python/matplotlib-1.4.3/temp/environment'.
* Working directory: '/var/tmp/portage/dev-python/matplotlib-1.4.3/work/matplotlib-1.4.3-python2_7'
* S: '/var/tmp/portage/dev-python/matplotlib-1.4.3/work/matplotlib-1.4.3' |
The problem appears to be that GCC itself choked at some point during the emerge, which is what makes me reasonably certain that this is due to the GCC update and not a coincidence. Has anyone else encountered this? What's happening here? |
|
Back to top |
|
 |
fedeliallalinea Bodhisattva


Joined: 08 Mar 2003 Posts: 18284 Location: here
|
Posted: Fri Dec 01, 2017 7:59 am Post subject: |
|
|
See here, you can fix that by setting optimizer from -O2 to -O1 _________________ Questions are guaranteed in life; Answers aren't. |
|
Back to top |
|
 |
krotuss Apprentice

Joined: 01 Aug 2008 Posts: 156
|
Posted: Sun Dec 03, 2017 10:42 pm Post subject: |
|
|
Great, this happened to me during recommended emerge -e world. Any tips on how can I get emerge --resume list back? First emerge --resume spewed that there are some conflicts, subsequent reported that there seems to be nothing to resume. |
|
Back to top |
|
 |
fedeliallalinea Bodhisattva


Joined: 08 Mar 2003 Posts: 18284 Location: here
|
Posted: Mon Dec 04, 2017 7:04 am Post subject: |
|
|
I'm not sure that at this point there is a solution.
krinn created a script that build binary package during migration and if anything fails the script first (and if possible) install binary package (see here)
EDIT: in the same post that I linked there is a command (see mv post) that can compile the rest of remaining packages _________________ Questions are guaranteed in life; Answers aren't. |
|
Back to top |
|
 |
paulj Guru


Joined: 30 Sep 2004 Posts: 393 Location: Wales, UK
|
Posted: Wed Dec 06, 2017 8:21 am Post subject: |
|
|
krotuss wrote: | Great, this happened to me during recommended emerge -e world. Any tips on how can I get emerge --resume list back? First emerge --resume spewed that there are some conflicts, subsequent reported that there seems to be nothing to resume. |
I have had this problem previously. Although I haven't yet moved to the latest profile (a task for the next few days), when I do I use a script written by Guenther Brunthaler in 2006. It assesses the content of a full world install, and creates a script which installs each package one by one. If there is a problem, you can fix it and then resume. If you need to skip a package due to problems, you can index the counter and resume (understanding this might cause other issues, so use with an understanding of dependencies).
You will find more details of the script here: https://forums.gentoo.org/viewtopic-t-494331-start-0-postdays-0-postorder-asc-highlight-guenther.html
Of course you will end up repeating the installation you have done so far, unless you go through the compiling script and remove the package lines you know are already recompiled (genlop is your friend). |
|
Back to top |
|
 |
chithanh Developer


Joined: 05 Aug 2006 Posts: 2151 Location: Berlin, Germany
|
Posted: Thu Dec 14, 2017 12:35 pm Post subject: |
|
|
krotuss wrote: | Any tips on how can I get emerge --resume list back? First emerge --resume spewed that there are some conflicts, subsequent reported that there seems to be nothing to resume. | At most two resume lists are saved by portage. This means if you do
- emerge -e @world (failed), then
- emerge matplotlib (failed), then
- emerge --resume
Portage will try to resume matplotlib emerge which might be impossible as previous aborted emerge may have left the packages in a conflicting state. In that case, emerge --resume --ask --nodeps will build only matplotlib, and subsequent emerge --resume will continue with @world. If however you emerge anything else after matplotlib build fails, then the @world resume list will be lost. |
|
Back to top |
|
 |
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|