RKI Build Error - rtems_clock_get not available on 4.12

Alan Cudmore alan.cudmore at gmail.com
Fri Apr 22 17:49:43 UTC 2016


Hi,
I’ll take a look at this soon. I built a set of 4.11 tools and the 4.11 branch of RTEMS, then I verified that I can still build and run the RKI image on the Raspberry Pi. 
Next, I’m going to tag RKI as a 4.11 branch, then try to fix it for the 4.12/head of RTEMS. 

I should have some additions to the RKI after that. I have been writing some i2c device drivers for the Raspberry Pi Sense Hat ( new linux i2c API ) , and I was trying to get an SPI device to work on the Pi. 

Alan

> On Apr 22, 2016, at 12:35 PM, Olufowobi, Habeeb <habeeb.olufowobi at bison.howard.edu> wrote:
> 
> Hi,
> 
> I applied the fix that Pavel suggested but got the error below.
> 
>  arm-rtems4.12-gcc  -march=armv7-a -mthumb -mfpu=neon -mfloat-abi=hard -mtune=cortex-a7  --pipe -B/home/dipupo/development/rtems/kernel/builds/b-rpi/arm-rtems4.12/raspberrypi/lib -specs bsp_specs -qrtems -Wall   -o legacy-build/arm-rtems4.12-raspberrypi/rki.elf legacy-build/arm-rtems4.12-raspberrypi/init.o legacy-build/arm-rtems4.12-raspberrypi/rtems_net.o legacy-build/arm-rtems4.12-raspberrypi/rtems_net_svc.o legacy-build/arm-rtems4.12-raspberrypi/local_shell_cmds.o legacy-build/arm-rtems4.12-raspberrypi/filesys.o legacy-build/arm-rtems4.12-raspberrypi/ramdisk.o legacy-build/arm-rtems4.12-raspberrypi/nvramdisk.o legacy-build/arm-rtems4.12-raspberrypi/task_cmd.o legacy-build/arm-rtems4.12-raspberrypi/hello_cmd.o legacy-build/arm-rtems4.12-raspberrypi/dhrystone_cmd.o legacy-build/arm-rtems4.12-raspberrypi/whetstone_cmd.o legacy-build/arm-rtems4.12-raspberrypi/benchmarks.o legacy-build/arm-rtems4.12-raspberrypi/tarfile.o -lm
> /home/dipupo/development/rtems/4.12/lib/gcc/arm-rtems4.12/6.0.0/../../../../arm-rtems4.12/bin/ld: error: legacy-build/arm-rtems4.12-raspberrypi/rki.elf uses VFP register arguments, /home/dipupo/development/rtems/kernel/builds/b-rpi/arm-rtems4.12/raspberrypi/lib/librtemsbsp.a(libbsp_a-bootcard.o) does not
> /home/dipupo/development/rtems/4.12/lib/gcc/arm-rtems4.12/6.0.0/../../../../arm-rtems4.12/bin/ld: failed to merge target specific data of file /home/dipupo/development/rtems/kernel/builds/b-rpi/arm-rtems4.12/raspberrypi/lib/librtemsbsp.a(libbsp_a-bootcard.o)
> 
> Kindly advice.
> 
> Regards,
> Habeeb
> 
> On Thu, Apr 21, 2016 at 6:51 AM, Alan Cudmore <alan.cudmore at gmail.com <mailto:alan.cudmore at gmail.com>> wrote:
> I should be able to update my RKI repository soon.. I’m building the latest tools and RTEMS repo now.
> 
> Alan
> 
> > On Apr 21, 2016, at 6:14 AM, Pavel Pisa <ppisa4lists at pikron.com <mailto:ppisa4lists at pikron.com>> wrote:
> >
> > Hello Habeeb,
> >
> > rtems_clock_get() has been obsoleted long time ago
> > and has been removed in
> >
> >    e65c45c4b6cf6dfb485bef48385e39969de8b361
> >    Obsolete rtems_clock_get() directive.
> >
> >    This service was marked as deprecated long prior to the 4.11 release
> >    series and is now being removed.
> >
> >    closes #2676.
> >
> >
> > You should rewrite code as
> >
> >   rtems_interval ticks;
> > -  rtems_clock_get(RTEMS_CLOCK_GET_TICKS_SINCE_BOOT,&ticks);
> > +  ticks = rtems_clock_get_ticks_since_boot();
> >
> >
> > If you need to be compatible even with very old RTEMS versions, probably
> > pre-4.9, you can use
> >
> >   rtems_interval ticks;
> >  #ifndef RTEMS_CLOCK_GET_TICKS_SINCE_BOOT
> >   ticks = rtems_clock_get_ticks_since_boot();
> >  #else /*RTEMS_CLOCK_GET_TICKS_SINCE_BOOT*/
> >   rtems_clock_get(RTEMS_CLOCK_GET_TICKS_SINCE_BOOT,&ticks);
> >  #endif /*RTEMS_CLOCK_GET_TICKS_SINCE_BOOT*/
> >
> > Best wishes,
> >
> >               Pavel
> >
> >
> > On Thursday 21 of April 2016 02:50:55 Olufowobi, Habeeb wrote:
> >> Hi,
> >>
> >> I am trying to build RKI for Raspberrypi but I have been getting this error
> >> message:
> >>
> >>
> >> arm-rtems4.12-gcc
> >> -Wa,-a=legacy-build/arm-rtems4.12-raspberrypi/task_cmd.lis -march=armv7-a
> >> -mthumb -mfpu=neon -mfloat-abi=hard -mtune=cortex-a7 -D__ARM__   --pipe
> >> -B/home/dipupo/development/rtems/kernel/builds/b-rpi/arm-rtems4.12/raspberr
> >> ypi/lib -specs bsp_specs -qrtems -Wall  -I. -Iinclude/  -I. -g -O2  -c -o
> >> legacy-build/arm-rtems4.12-raspberrypi/task_cmd.o task_cmd.c
> >> task_cmd.c: In function 'get_ticks_per_second':
> >> task_cmd.c:23:10: warning: implicit declaration of function
> >> 'rtems_clock_get' [-Wimplicit-function-declaration]
> >>   (void) rtems_clock_get( RTEMS_CLOCK_GET_TICKS_PER_SECOND,
> >> &ticks_per_second );  return ticks_per_second;
> >>          ^~~~~~~~~~~~~~~
> >> task_cmd.c:23:27: error: 'RTEMS_CLOCK_GET_TICKS_PER_SECOND' undeclared
> >> (first use in this function)
> >>   (void) rtems_clock_get( RTEMS_CLOCK_GET_TICKS_PER_SECOND,
> >> &ticks_per_second );  return ticks_per_second;
> >>                           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> >>
> >>
> >> The line associated with this message in the task_cmd.c is
> >>
> >> {
> >>  rtems_interval ticks_per_second;
> >>  (void) rtems_clock_get( RTEMS_CLOCK_GET_TICKS_PER_SECOND,
> >> &ticks_per_second );  return ticks_per_second;
> >> }
> >>
> >>
> >> Any ideas on how I can fix this?
> >>
> >> Thanks.
> >>
> >> Best regards,
> >> Habeeb
> >
> > _______________________________________________
> > devel mailing list
> > devel at rtems.org <mailto:devel at rtems.org>
> > http://lists.rtems.org/mailman/listinfo/devel <http://lists.rtems.org/mailman/listinfo/devel>
> 
> _______________________________________________
> devel mailing list
> devel at rtems.org <mailto:devel at rtems.org>
> http://lists.rtems.org/mailman/listinfo/devel <http://lists.rtems.org/mailman/listinfo/devel>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.rtems.org/pipermail/devel/attachments/20160422/476e12bc/attachment-0002.html>


More information about the devel mailing list