Difference between revisions of "Building"

From Syslinux Wiki
Jump to: navigation, search
m (The "Not enough room for program headers" issue is not expected to affect 6.04-pre1+.)
(Broken efi binaries with binutils >= 2.31)
Line 1: Line 1:
 
<!-- -->
 
<!-- -->
 +
* Fix broken efi binaries with '''binutils 2.31+''' <!--
 +
  -->  <p>  "Binutils >= 2.31 writes two PT_LOAD segements by default. This is not supported by the <tt>wrapper.c</tt> script used to convert the shared object into an elf binary." </p>  <!--
 +
  -->References:
 +
** [https://salsa.debian.org/images-team/syslinux/commit/012e1dd312eb8c1f9a52239966e0be0169d7af98 "Patches from Debian"] ( Lukas Schwaighofer <!-- (irc: lus) --> )
 +
** [https://www.syslinux.org/archives/2018-August/026168.html Discard .note.gnu.property section to fix build failure (patch)]
 +
** [https://www.syslinux.org/archives/2018-August/026167.html Patch: fix syslinux.efi (Re: Unable to get syslinux.efi to work, grub2 boots tho)]
 +
<!--  -->
 +
<!--  -->
 
* If getting "'''''Not enough room for program headers'''''", try adding <!--  
 
* If getting "'''''Not enough room for program headers'''''", try adding <!--  
 
   --> {{nowrap|1='<tt>--no-dynamic-linker</tt>'}} to the linker command line(s). <!--  
 
   --> {{nowrap|1='<tt>--no-dynamic-linker</tt>'}} to the linker command line(s). <!--  

Revision as of 22:41, 4 October 2018


Patches already included in Syslinux 6.04-pre1 (released 2016Mar):

Other

  • NASM 2.11.06 has a bug which prevents Syslinux from building correctly. Use other version of NASM (e.g. 2.11.05, 2.11.08+, among others).
  • binutils 2.26, as originally released upstream, has a bug preventing Syslinux from building correctly. The bug in bintuils 2.26 was resolved in a later commit.
  • "error: impossible constraint in asm". When gcc5+ is configured with --enable-default-pie, in some cases there might be a need to use custom flags in some makefile(s), similar to either "CFLAGS += -fno-pie" or "CFLAGS := -fno-pie". Examples:


See also