[En-Nut-Discussion] ethernut-4.4.0.exe problem to compile.

Harald Kipp harald.kipp at egnite.de
Sun Sep 30 10:56:01 CEST 2007


Paulo,

I tried here with the Olimex config:

10:43:22: Nut/OS Configurator Version 1.4.3
10:43:22: Linked to wxWidgets 2.8.3
10:43:22: Running on Windows 2000 (build 2195, Service Pack 4)
10:43:22: Working in C:\ethernut-4.4.0
10:43:26: Loading nut/conf/repository.nut
10:43:26: Loading C:/ethernut-4.4.0/nut/conf/olimex-sam7-ex256.conf
10:43:26: OK
10:45:14: Creating Makefiles for arm-gcc in nutbld-olimex-sam7x
10:45:14: Creating header files in nutbld-olimex-sam7x
10:45:14: OK
10:45:15: ----- Running 'make clean' -----
10:45:15: Located C:\ethernut-4.4.0\nut\tools\win32\make.exe
10:45:17: ----- 'make clean' terminated successfully -----
10:45:17: ----- Running 'make all' -----
10:45:17: Located C:\ethernut-4.4.0\nut\tools\win32\make.exe
arm-elf-ar: creating libnutarch.a
arm-elf-ar: creating libnutos.a
arm-elf-ar: creating libnutdev.a
arm-elf-ar: creating libnutc.a
arm-elf-ar: creating libnutcrt.a
arm-elf-ar: creating libnutnet.a
arm-elf-ar: creating libnutpro.a
arm-elf-ar: creating libnutfs.a
arm-elf-ar: creating libnutcpp.a
10:45:52: ----- 'make all' terminated successfully -----
10:45:52: ----- Running 'make install' -----
10:45:52: Located C:\ethernut-4.4.0\nut\tools\win32\make.exe
10:45:54: ----- 'make install' terminated successfully -----

Works without roblem.

As far as I can see in your build log, uptr_t is not defined. This 
should happen in sys/types.h

#if defined(__AVR__)
    typedef unsigned short uptr_t;
#elif defined(__GNUC__)
/*
 * For remaining MCUs GCC is assumed where __PTRDIFF_TYPE__ macro is defined
 */
    typedef unsigned __PTRDIFF_TYPE__ uptr_t;
#else
    typedef unsigned int uptr_t;
#endif

Possibly the compiler grabs the wrong sys/types.h?

Harald

Paulo Silva schrieb:
> 10:35:05: Nut/OS Configurator Version 1.4.3
> 10:35:05: Linked to wxWidgets 2.8.3
> 10:35:05: Running on Windows Server 2003 (build 3790)
> 10:35:05: Working in c:\MeusProgramas\ethernut-4.4.0
> 10:35:27: Loading nut/conf/repository.nut
> 10:35:27: Loading C:/MeusProgramas/ethernut-4.4.0/nut/conf/olimex-sam7-ex256.conf
> 10:35:27: OK
> 10:36:02: Creating Makefiles for arm-gcc in nutbld_arm
> 10:36:02: Creating header files in nutbld_arm
> 10:36:02: OK
> 10:36:03: ----- Running 'make clean' -----
> 10:36:03: Located C:\MeusProgramas\ethernut-4.4.0\nut\tools\win32\make.exe
> 10:36:05: ----- 'make clean' terminated successfully -----
> 10:36:05: ----- Running 'make all' -----
> 10:36:05: Located C:\MeusProgramas\ethernut-4.4.0\nut\tools\win32\make.exe
> In file included from ../../nut/arch/arm/os/context.c:92:
> ../../nut/include/sys/thread.h:157: error: expected specifier-qualifier-list before 'uptr_t'
> ../../nut/include/sys/thread.h:198: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'extern'
> ../../nut/include/sys/thread.h:206: error: expected ')' before 'timer'
> ../../nut/include/sys/thread.h:213: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'GetThreadByName'
> ../../nut/arch/arm/os/context.c:107: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'typedef'
> ../../nut/arch/arm/os/context.c: In function 'NutThreadSwitch':
> ../../nut/arch/arm/os/context.c:162: error: 'NUTTHREADINFO' has no member named 'td_sp'
> ../../nut/arch/arm/os/context.c:178: error: 'NUTTHREADINFO' has no member named 'td_sp'
> ../../nut/arch/arm/os/context.c:156: error: memory input 0 is not directly addressable
> ../../nut/arch/arm/os/context.c:170: error: memory input 0 is not directly addressable
> ../../nut/arch/arm/os/context.c: At top level:
> ../../nut/arch/arm/os/context.c:202: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'NutThreadCreate'
> make[1]: *** [arm/os/context.o] Error 1
> make: *** [all] Error 2
> 10:36:07: ----- 'make all' failed with error 2 -----
>
>   




More information about the En-Nut-Discussion mailing list