Cygwin tools failure

Joel Sherrill joel at rtems.org
Wed Oct 12 03:30:06 UTC 2022


On Tue, Oct 11, 2022 at 8:36 PM Ryan Long <ryan.long at oarcorp.com> wrote:

> Cygwin has been unable to build the tools for awhile. This has been due
> to an array subscript being a char while building DTC. The maintainers
> didn't see an issue with the code itself, so it's going to go on being
> broken for awhile I guess.
>
> Joel recommended commented out the building of DTC through the RSB.
> After doing so, I'm running into the following error. I was building
> AArch64's tools. Disabling DTC and building with my Debian WSL instance
> built it just fine.
>
>
> [ 48/258] Compiling rtemstoolkit/elftoolchain/libelf/libelf_align.c
> ../rtemstoolkit/elftoolchain/libelf/elf.c:34:35: error: ‘LIBELF_ARCH’
> undeclared here (not in a function); did you mean ‘LIBELF_ERROR’?
>     34 |         .libelf_arch            = LIBELF_ARCH,
>        |                                   ^~~~~~~~~~~
>        |                                   LIBELF_ERROR
> ../rtemstoolkit/elftoolchain/libelf/elf.c:35:35: error:
> ‘LIBELF_BYTEORDER’ undeclared here (not in a function); did you mean
> ‘LIBELF_ERROR’?
>     35 |         .libelf_byteorder       = LIBELF_BYTEORDER,
>        |                                   ^~~~~~~~~~~~~~~~
>        |                                   LIBELF_ERROR
> ../rtemstoolkit/elftoolchain/libelf/elf.c:36:35: error: ‘LIBELF_CLASS’
> undeclared here (not in a function)
>     36 |         .libelf_class           = LIBELF_CLASS,
>        |                                   ^~~~~~~~~~~~
>
> Waf: Leaving directory
>
> `/home/rtems-tester/rtems-cron-6/rtems-source-builder/rtems/build/rtems-tools-d0a65c72d1a170637258eb19f7d3e433be7c3c86-1/rtems-tools-d0a65c72d1a170637258eb19f7d3e433be7c3c86/build'
>
>
> Does anyone know a fix for this?
>

rtemstoolkit/elftoolchain/libelf/_libelf_config.h has ifdef's for various
host operating
systems and does not have one for Cygwin or MSYS. But it can't know the
native ELF
details because the native format is not ELF:

$ file /bin/cat.exe
/bin/cat.exe: PE32+ executable (console) x86-64, for MS Windows

I'm not sure what to do about this. My first thought would be to add
Cygwin to the list like FreeBSD and see if that defines what you need.
or find the x86_64 Linux settings and use those for Cygwin to let it
compile.

I'm not sure why we need to know the native ELF details.

--joel


> Thanks,
>
> Ryan
>
> _______________________________________________
> devel mailing list
> devel at rtems.org
> http://lists.rtems.org/mailman/listinfo/devel
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.rtems.org/pipermail/devel/attachments/20221011/b50c8ee0/attachment.htm>


More information about the devel mailing list