Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
matplotlib wont emerge (compiler segfaults) after GCC update
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Portage & Programming
View previous topic :: View next topic  
Author Message
jroth
n00b
n00b


Joined: 08 Aug 2017
Posts: 20

PostPosted: Fri Dec 01, 2017 7:48 am    Post subject: matplotlib wont emerge (compiler segfaults) after GCC update Reply with quote

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
View user's profile Send private message
fedeliallalinea
Bodhisattva
Bodhisattva


Joined: 08 Mar 2003
Posts: 16911
Location: here

PostPosted: Fri Dec 01, 2017 7:59 am    Post subject: Reply with quote

See here, you can fix that by setting optimizer from -O2 to -O1
_________________
Questions are guaranteed in life; Answers aren't.
Back to top
View user's profile Send private message
krotuss
Apprentice
Apprentice


Joined: 01 Aug 2008
Posts: 156

PostPosted: Sun Dec 03, 2017 10:42 pm    Post subject: Reply with quote

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
View user's profile Send private message
fedeliallalinea
Bodhisattva
Bodhisattva


Joined: 08 Mar 2003
Posts: 16911
Location: here

PostPosted: Mon Dec 04, 2017 7:04 am    Post subject: Reply with quote

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
View user's profile Send private message
paulj
Guru
Guru


Joined: 30 Sep 2004
Posts: 384
Location: Wales, UK

PostPosted: Wed Dec 06, 2017 8:21 am    Post subject: Reply with quote

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
View user's profile Send private message
chithanh
Developer
Developer


Joined: 05 Aug 2006
Posts: 2142
Location: Berlin, Germany

PostPosted: Thu Dec 14, 2017 12:35 pm    Post subject: Reply with quote

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
  1. emerge -e @world (failed), then
  2. emerge matplotlib (failed), then
  3. 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
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Portage & Programming All times are GMT
Page 1 of 1

 
Jump to:  
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