I'm using 64 bit Cygwin on Windows 8.1 for some basic operating system development. I'd like to use the utilities that come with GRUB 2.00 (such as mkrescue and mkimage) as my kernel is Multiboot 2 compatible and I'm booting from CD.
I have no problems compiling all of the tools I need in Cygwin except for GRUB, which spits out the following errors:
libgrubkern.a(libgrubkern_a-getroot.o):getroot.c:(.text+0x215): undefined reference to `cygwin_conv_to_full_posix_path'
libgrubkern.a(libgrubkern_a-getroot.o):getroot.c:(.text+0x215): relocation truncated to fit: R_X86_64_PC32 against undefined symbol `cygwin_conv_to_full_posix_path'
libgrubkern.a(libgrubkern_a-getroot.o):getroot.c:(.text+0x228): undefined reference to `cygwin_conv_to_full_win32_path'
libgrubkern.a(libgrubkern_a-getroot.o):getroot.c:(.text+0x228): relocation truncated to fit: R_X86_64_PC32 against undefined symbol `cygwin_conv_to_full_win32_path'
collect2: error: ld returned 1 exit status
Makefile:16816: recipe for target 'grub-mkrelpath.exe' failed
This is obviously something to do with the conversion in Cygwin between Windows and Posix-style paths. Slightly frustrating because even something as big as the GCC cross-compiler were compilable with no such issue.
I have Googled the exact error, but get no hits in relation to GRUB. Does anyone have a solution for this?
Adam