Re: Re: Re: Re: error: implicit declaration of function ‘__OPEN_NEEDS_MODE’

florian.bezdeka at florian.bezdeka at
Tue Dec 29 09:28:22 CET 2020

On Mon, 2020-12-28 at 16:52 -0500, Greg Gallagher via Xenomai wrote:
> On Mon, Dec 28, 2020 at 4:46 PM Gabriel Dinse via Xenomai <
> xenomai at> wrote:
> > I am trying to use mainline Kernel. I think xenomai has a fork for RPI
> > kernel 4.1 but it is not up to date, right? Also, the right paper is
> >, not
> > the other one I sent. The author managed to use kernel 4.9.51 disabling
> > support for systems besides Broadcom BCM2835.

Bringing back the build error:

make[3]: Entering directory '/home/gabriel/xenomai-3/build/lib/cobalt'
  CC       libcobalt_la-rtdm.lo
../../../lib/cobalt/rtdm.c: In function ‘__cobalt___open_2’:
../../../lib/cobalt/rtdm.c:104:2: error: implicit declaration of function ‘__OPEN_NEEDS_MODE’
  if (__OPEN_NEEDS_MODE(oflag)) {

You are trying to compile libcobalt, so the userspace part of Xenomai.
So I assume the kernel version should not matter here. Could you please
try to provide the glibc version of your build environment again?

Building for the RPI requires a cross-compiler toolchain, so make sure
you check the glibc version of your toolchain and not the native one
from your build system.

> > 
> > I’ve tested 4.19 and it works. I haven’t tested it on the 2835 in a while
> but I’ll try to reproduce your issue tonight.
> Greg

More information about the Xenomai mailing list