[uClinux-dev] limits.h on own ARM-Architecture

Greg Ungerer gerg at snapgear.com
Wed May 12 23:10:40 EDT 2010


Hi Frank,

Frank Mölendörp wrote:
> I'm trying to compile uClinux at MPS (Microcontroller Prototyping 
> System). Here I have a customized Cortex M4 processor on it, this means 
> that the peripherals could customized loaded into a FPGA.
> Used files:
> uCLinux-dist (20200315)

Do you mean version 20100315 ?


> CodeSourcery G++ 4.4.1
> and a patch directly from ARM.
> 
> I currently could compile the Kernel and the uClibc, but after entering 
> the userland, I come into trouble. The limits.h from the compiler has a 
> special directive called # include_next <limits.h>. So I looked for the 
> next limits.h file in all the directorys.
> Here is the output:
> 
> ------------------8<---------------------8<-----------------------8<--------- 
> 
> 
> make[1]: Entering directory `/mnt/drive/uClinux-dist/user'
> make -j1 /mnt/drive/uClinux-dist/prop 
> /mnt/drive/uClinux-dist/vendors/MPS/CM3/. busybox dhcpcd-new games 
> gdbserver inetd init login net-tools ping ramimage sash telnetd || exit $?
> make[2]: Entering directory `/mnt/drive/uClinux-dist/user'
> [ ! -d "/mnt/drive/uClinux-dist/prop" ] || ( touch 
> /mnt/drive/uClinux-dist/prop/.sgbuilt_user && make -j1 -C 
> /mnt/drive/uClinux-dist/prop ) || exit $?
> make[2]: Nothing to be done for 
> `/mnt/drive/uClinux-dist/vendors/MPS/CM3/.'.
> [ ! -d "busybox" ] || ( touch busybox/.sgbuilt_user && make -j1 -C 
> busybox ) || exit $?
> make[3]: Entering directory `/mnt/drive/uClinux-dist/user/busybox'
> make[4]: `__build' is up to date.
>  CC      applets/applets.o
> In file included from include/libbb.h:41,
>                 from include/busybox.h:10,
>                 from applets/applets.c:11:
> /home/quotrader/CodeSourcery/Sourcery_G++_Lite/arm-none-linux-gnueabi/libc/usr/include/limits.h:23: 
> warning: #warning LIBC_LIMITS_H_CS
> In file included from 
> /home/quotrader/CodeSourcery/Sourcery_G++_Lite/arm-none-linux-gnueabi/libc/usr/include/limits.h:125, 
> 
>                 from include/libbb.h:41,
>                 from include/busybox.h:10,
>                 from applets/applets.c:11:
> /mnt/drive/uClinux-dist/uClibc/include/limits.h:22: warning: #warning 
> LIBC_LIMITS_uC
> /mnt/drive/uClinux-dist/uClibc/include/limits.h:124: fatal error: 
> limits.h: No such file or directory
> compilation terminated.
> make[4]: *** [applets/applets.o] Error 1
> make[3]: *** [applets] Error 2
> make[3]: Leaving directory `/mnt/drive/uClinux-dist/user/busybox'
> make[2]: *** [busybox] Error 2
> make[2]: Leaving directory `/mnt/drive/uClinux-dist/user'
> make[1]: *** [all] Error 2
> make[1]: Leaving directory `/mnt/drive/uClinux-dist/user'
> make: *** [subdirs] Error 1
> 
> ------------------8<---------------------8<-----------------------8<--------- 
> 
> 
> 
> /mnt/drive/uClinux-dist/uClibc/include/limits.h:124: fatal error: 
> limits.h: No such file or directory
> ^- this message says me, that he couldn't find the next limits.h. In all 
> the limits.h's I found there was this directive:
> # include_next <limits.h>
> 
> I don't understand this mechanism. So could some please tell me: How 
> does it work and when somebody knows how I fix this problem.

It simply goes on to include the next limits.h file in its
include search path.

I seem to recall this coming up a few years ago (don't recall if it
was and ARM targeted compiler or not though) - on this list. If you
google a little you may find the answer back then.

Regards
Greg


------------------------------------------------------------------------
Greg Ungerer  --  Principal Engineer        EMAIL:     gerg at snapgear.com
SnapGear Group, McAfee                      PHONE:       +61 7 3435 2888
8 Gardner Close                             FAX:         +61 7 3217 5323
Milton, QLD, 4064, Australia                WEB: http://www.SnapGear.com



More information about the uClinux-dev mailing list