There are two fixdep.c files, one in basic scripts and the other in tools.
I exported gcc option '-fPIC' in an attempt to get past the linker error,
and it was in effect for the basic script, but was not passed to the tools
script. The follow output is from a log of the build process:

grep fixdep make-kernel.log
  gcc -Wp,-MD,scripts/basic/.fixdep.d -Wall -Wmissing-prototypes
-Wstrict-prototypes -O2 -fomit-frame-pointer -std=gnu89    -fPIC   -o
scripts/basic/fixdep scripts/basic/fixdep.c
... (build proceeds)
make -C /usr/src/linux-source-4.18/tools/build CFLAGS= LDFLAGS=
/usr/src/linux-source-4.18/tools/objtool/fixdep
  HOSTCC   /usr/src/linux-source-4.18/tools/objtool/fixdep.o
  HOSTLD   /usr/src/linux-source-4.18/tools/objtool/fixdep-in.o
  LINK     /usr/src/linux-source-4.18/tools/objtool/fixdep
/usr/bin/ld: /usr/src/linux-source-4.18/tools/objtool/fixdep-in.o:
relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making
a PIE object; recompile with -fPIC
make[6]: *** [Makefile:46: /usr/src/linux-source-4.18/tools/objtool/fixdep]
Error 1
make[5]: *** [/usr/src/linux-source-4.18/tools/build/Makefile.include:4:
fixdep] Error 2

Reply via email to