Colbert, Kevin
2015-Sep-08 18:27 UTC
[syslinux] cannot compile simple.c from within Syslinux 6.03
Hello All, This is my first time requesting help, so please bear with me. I don't upgrade Syslinux very often (only when the need arises), until now I have been using version 4.05. However, I have recently acquired several UEFI servers that are in need of being able to do OS installations via pxelinux. I have upgraded to Syslinux version 6.03, however I am not able to compile my custom simple.c menu program from within /opt/syslinux-6.03/com32/cmenu (it does compiles under Syslinux 4.05 when I run "make" in the /opt/syslinux-4.05/com32/cmenu directory). My PXE server is running RHEL 5.8 x86_64 with the latest updates. I am compiling simple.c with gcc (GCC) 4.1.2 20080704 (Red Hat 4.1.2-55). I see that the Syslinux "installer" can be built for both the "BIOS" and "64-bit EFI" by running "make bios efi64 installer", is there an argument that can be passed to "make" that will build the simple.c32 file for both "BIOS" and "64-bit EFI"? I have read through all the documentation that I can find on the web as well as what is in the Syslinux "doc" directory, but I haven't been able to find any reference to how build simple.c32 when using version 6.03. If I run "make" from the /opt/syslinux-6.03/com32/cmenu directory, I get the following: [root at SWVT-LINUX cmenu]# make Makefile:27: /elf.mk: No such file or directory make: *** No rule to make target `/elf.mk'. Stop. Any help that you can provide will be deeply appreciated. Thank you sincerely, Kevin Colbert
Didier Spaier
2015-Sep-08 18:59 UTC
[syslinux] cannot compile simple.c from within Syslinux 6.03
Hello Kevin On 08/09/2015 20:27, Colbert, Kevin via Syslinux wrote: > Hello All, > I see that the Syslinux "installer" can be built for both the "BIOS" and "64-bit EFI" by running "make bios efi64 installer", Not sure about that, I'll let a developer answer. Actually in case of EFI there is no "installer" AFAIK, just an PE/COFF image to be put in its place. But, why not just use the official binaries instead of rebuilding them? Cheers, Didier
Gene Cumm
2015-Sep-08 19:27 UTC
[syslinux] cannot compile simple.c from within Syslinux 6.03
On Tue, Sep 8, 2015 at 2:27 PM, Colbert, Kevin via Syslinux <syslinux at zytor.com> wrote:> Hello All,Wrapping the message.> This is my first time requesting help, so please bear with me. I don't > upgrade Syslinux very often (only when the need arises), until now I > have been using version 4.05. However, I have recently acquired several > UEFI servers that are in need of being able to do OS installations via > pxelinux. I have upgraded to Syslinux version 6.03, however I am notSuch doesn't exist. syslinux.efi covers FAT* boot and PXE loads in 1 binary.> able to compile my custom simple.c menu program from within > /opt/syslinux-6.03/com32/cmenu (it does compiles under Syslinux 4.05 > when I run "make" in the /opt/syslinux-4.05/com32/cmenu directory). MyThat should fail.> PXE server is running RHEL 5.8 x86_64 with the latest updates. I am > compiling simple.c with gcc (GCC) 4.1.2 20080704 (Red Hat 4.1.2-55). I > see that the Syslinux "installer" can be built for both the "BIOS" and > "64-bit EFI" by running "make bios efi64 installer", is there an > argument that can be passed to "make" that will build the simple.c32 > file for both "BIOS" and "64-bit EFI"? I have read through all the > documentation that I can find on the web as well as what is in the > Syslinux "doc" directory, but I haven't been able to find any reference > to how build simple.c32 when using version 6.03. If I run "make" from > the /opt/syslinux-6.03/com32/cmenu directory, I get the following: > > [root at SWVT-LINUX cmenu]# make > Makefile:27: /elf.mk: No such file or directory > make: *** No rule to make target `/elf.mk'. Stop.You'll need to perform your make from the root. The root Makefile sets up key variables to control how and where pieces are built due to the triple-architecture ( bios/ efi32/ and efi64/ ). Short of a full make, I'm not sure what less you can build without trying> Any help that you can provide will be deeply appreciated. > > Thank you sincerely, > > Kevin ColbertThere's still an open discussion regarding certain HP and HPE UEFI systems. -- -Gene
Ferenc Wagner
2015-Sep-08 20:51 UTC
[syslinux] cannot compile simple.c from within Syslinux 6.03
"Colbert, Kevin via Syslinux" <syslinux at zytor.com> writes:> I have upgraded to Syslinux version 6.03, however I am not able to > compile my custom simple.c menu program from within > /opt/syslinux-6.03/com32/cmenu (it does compiles under Syslinux 4.05 > when I run "make" in the /opt/syslinux-4.05/com32/cmenu directory).That's unexpected, as Gene explained. However, you may want to check out whether the Lua binding of libmenu.c32 in Syslinux 6.03 is enough for you, in which case you may be able to avoid compilation altogether. See com32/lua/test/simplemenu.lua for an example.> is there an argument that can be passed to "make" that will build the > simple.c32 file for both "BIOS" and "64-bit EFI"?Just do a plain make bios or make efi64 at the top level. After the first run that will only remake what's necessary. -- Regards, Feri.