iPXE discussion forum

Full Version: code model kernel does not support PIC mode
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Hello,

When I'm building "make bin-x86_64-pcbios/ipxe.lkrn", I get this error:
Code:
cc1: error: code model kernel does not support PIC mode
Makefile.housekeeping:936: recipe for target 'bin-x86_64-pcbios/__umoddi3.o' failed
make: *** [bin-x86_64-pcbios/__umoddi3.o] Error 1
And when I build it in 32 bit, I get a different error:
Code:
util/zbin.c:7:10: fatal error: lzma.h: No such file or directory
#include <lzma.h>
          ^~~~~~~~
compilation terminated.
Makefile.housekeeping:1381: recipe for target 'util/zbin' failed
make: *** [util/zbin] Error 1
I found a way to solve the "kernel does not support PIC mode". You just add "-fno-pie" at the end of this line in Makefile.housekeeping. Apparently it's a bug with gcc v5+. link
Code:
CFLAGS          += $(WORKAROUND_CFLAGS) $(EXTRA_CFLAGS) -fno-pie

On both architecture, I get the lzma.h error. Does anybody have a clue?
Any particular reason you are building bin-x86_64-pcbios instead of bin-i386-pcbios ?
in regards to lzma, check the http://ipxe.org/download#source_code page, relevant prerequsit: "liblzma or xz header files"

Are you building from latest git master? or what is the git commit that you are using?
Just needed to reinstall the liblzma package. Don't know why but now it works. Thanks!
Hello,
I have a similar issue , after cloning the ipxe code source, the command "Make " generate a set of errors and the final result is as you see below:
Makefile.housekeeping:938: recipe for target 'bin/__umoddi3.o' failed
make: *** [bin/__umoddi3.o] Error 1


anyone have an idea about this ?
thank you
(2019-04-26 10:30)labba7 Wrote: [ -> ]Hello,
I have a similar issue , after cloning the ipxe code source, the command "Make " generate a set of errors and the final result is as you see below:
Makefile.housekeeping:938: recipe for target 'bin/__umoddi3.o' failed
make: *** [bin/__umoddi3.o] Error 1


anyone have an idea about this ?
thank you

Have you done as the OP did and make sure that you have liblzma headers installed?

If so, what are you compiling on? (example Ubuntu 16 or similar)
Reference URL's