Closed epruesse closed 3 years ago
The offending lines are in ./lib/perl5/5.22.0/x86_64-linux-thread-multi/Config_heavy.pl
:
199:ccflags='-D_REENTRANT -D_GNU_SOURCE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2'
229:cppflags='-D_REENTRANT -D_GNU_SOURCE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include'
991:lddlflags='-shared -O2 -L/usr/local/lib -fstack-protector-strong'
992:ldflags=' -fstack-protector-strong -L/usr/local/lib'
1336:ccflags_nolargefiles='-D_REENTRANT -D_GNU_SOURCE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include -D_FORTIFY_SOURCE=2'
1337:ldflags_nolargefiles=' -fstack-protector-strong -L/usr/local/lib'
This should be fixable by #12 or a rebuild, if gcc 4.9 was used on accident.
I don't think gcc 4.9 is being used though. We only install gcc 4.8. 😕
Maybe an accident? All I can see is that Perl decided to use a 4.9 flag which doesn't work with 4.8. May have been a bug in the perl build chain, or may have been caused by a temporary failure in the build setup where 4.9 was used (for whatever reason). It seems to be fixed in 5.22.2 though.
Still... should this be added to the tests perhaps?
Just to be clear, there is no gcc 4.9 on the image. Only gcc 4.8.2. Feel free to check. Though I could be misunderstanding the comment.
If we install the gcc
package from defaults
, then we get gcc
4.8.5. It's newer than the devtoolset-2 one. How are we sure this problem won't occur with it too?
Patching perl might be a solution. A quick Google turned up this. Maybe newer versions of perl have better ways of handling disabling -fstack-protector-strong
. Perhaps it is worthwhile to do some research on this problem so we can find the right fix.
Sorry, I don't follow your suggestion, what are you proposing be added to the tests?
We use our own compiler stack since a good while now. Closing as outdated.
perl 5.22.0.1-0
was compiled with gcc 4.9, enabling the use of-fstack-protector-strong
when compiling perl bindings with MakeMaker and leading to failure with standard conda gcc 4.8.Perhaps add
toolchain
to the build requirements?