Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 503878

Summary: sys-kernel/hardened-sources-3.2.55-r3 - cc1: error: cannot load plugin .../tools/gcc/colorize_plugin.so
Product: Gentoo Linux Reporter: Dennis Schridde <dschridde+gentoobugs>
Component: [OLD] Core systemAssignee: The Gentoo Linux Hardened Kernel Team (OBSOLETE) <hardened-kernel+disabled>
Status: RESOLVED OBSOLETE    
Severity: normal CC: hardened, jer, kernel, pageexec, spender
Priority: Normal    
Version: unspecified   
Hardware: IA64   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---

Description Dennis Schridde 2014-03-08 15:03:06 UTC
The plugins are not necessary the first thing that is build, hence other parts may fail due to plugins being not yet available:
  GEN     /root/build-3.2.55-hardened-r3/Makefile
scripts/kconfig/conf --silentoldconfig Kconfig
  HOSTCXX -fPIC tools/gcc/colorize_plugin.o
  HOSTCXX -fPIC tools/gcc/latent_entropy_plugin.o
  CC      arch/ia64/kernel/nr-irqs.s
cc1: error: cannot load plugin /root/build-3.2.55-hardened-r3/tools/gcc/colorize_plugin.so
/root/build-3.2.55-hardened-r3/tools/gcc/colorize_plugin.so: cannot open shared object file: No such file or directory
cc1: error: cannot load plugin /root/build-3.2.55-hardened-r3/tools/gcc/structleak_plugin.so
/root/build-3.2.55-hardened-r3/tools/gcc/structleak_plugin.so: cannot open shared object file: No such file or directory
cc1: error: cannot load plugin /root/build-3.2.55-hardened-r3/tools/gcc/latent_entropy_plugin.so
/root/build-3.2.55-hardened-r3/tools/gcc/latent_entropy_plugin.so: cannot open shared object file: No such file or directory
cc1: error: cannot load plugin /root/build-3.2.55-hardened-r3/tools/gcc/randomize_layout_plugin.so
/root/build-3.2.55-hardened-r3/tools/gcc/randomize_layout_plugin.so: cannot open shared object file: No such file or directory
make[3]: *** [arch/ia64/kernel/nr-irqs.s] Error 1
make[2]: *** [make_nr_irqs_h] Error 2
make[2]: *** Waiting for unfinished jobs....
  GENSEED  /root/build-3.2.55-hardened-r3/tools/gcc/randomize_layout_seed.h
  HOSTCXX -fPIC tools/gcc/structleak_plugin.o
  HOSTCXX -fPIC tools/gcc/randomize_layout_plugin.o
  HOSTLLD -shared tools/gcc/latent_entropy_plugin.so
  HOSTLLD -shared tools/gcc/colorize_plugin.so
  HOSTLLD -shared tools/gcc/structleak_plugin.so
  HOSTLLD -shared tools/gcc/randomize_layout_plugin.so
make[1]: *** [sub-make] Error 2
make: *** [all] Error 2
Comment 1 Anthony Basile gentoo-dev 2014-09-14 00:35:07 UTC
This appears to be an IA64 only bug.  Are you still hitting this?
Comment 2 Dennis Schridde 2014-09-14 04:12:58 UTC
The machine with the hardened kernel died a few months ago. So, no, I am not hitting that anymore. I am migrating away from Itanium at the moment, due to the age of my machines and ia64 support status.
Comment 3 Anthony Basile gentoo-dev 2014-09-14 11:25:14 UTC
(In reply to Dennis Schridde from comment #2)
> The machine with the hardened kernel died a few months ago. So, no, I am not
> hitting that anymore. I am migrating away from Itanium at the moment, due to
> the age of my machines and ia64 support status.

Thanks Dennis.  I tried to keep up with ia64 but really couldn't without any equipment to test on.
Comment 4 Dennis Schridde 2014-09-14 12:28:46 UTC
(In reply to Anthony Basile from comment #3)
> I tried to keep up with ia64 but really couldn't without any
> equipment to test on.

Oh, I am not blaming you. All kinds of software is breaking on ia64, and I just do not have the time to dive into it at the moment.
Comment 5 PaX Team 2014-09-14 12:56:46 UTC
this appears to be some make target dependency issue that apparently manifests on ia64 but not elsewhere. a quick look at around the dependency chain of nr-irqs.s shows that make_nr_irqs_h is a dependency of archprepare on ia64 but so is scripts_basic (whose dependency is gcc-plugins) and there's no ordering between these two. just for the record in case anyone else bumps into this in the future, perhaps try the following patch and let me know if it helped (i'll carry it in PaX regardless):

--- a/arch/ia64/Makefile
+++ b/arch/ia64/Makefile
@@ -101,5 +101,6 @@
 archprepare: make_nr_irqs_h FORCE
 PHONY += make_nr_irqs_h FORCE

+make_nr_irqs_h: KBUILD_CFLAGS := $(filter-out $(GCC_PLUGINS_CFLAGS),$(KBUILD_CFLAGS))
 make_nr_irqs_h: FORCE
        $(Q)$(MAKE) $(build)=arch/ia64/kernel include/generated/nr-irqs.h