[En-Nut-Discussion] No rule to make ...

Nikolas Becker N.Becker at pemtec.de
Fri Dec 6 09:47:08 CET 2019


Hello Uwe,

I'm really sorry, I just downloaded the newest version from the ethernut page and followed the tutorial which recommends yagarto. 

I visited the repository and downloaded the head revision. Sadly, I have no idea how to build the newest version from the source, so I just tried to copy the newer files over my already installed 5.2.4 build. 
I then installed the gnu arm toolchain as recommended by you. 
I accepted all licenses under the non-BSDL code section.
With GNU ARM Toolchain, I get the following log:

10:30:35: Nut/OS Configurator Version 3.0.2
10:30:35: Linked to wxWidgets 2.9.3
10:30:35: Running on Windows 7 (build 7601, Service Pack 1), 64-bit edition
10:30:35: Working in D:\dev\trunk\Ethernut\ethernutmix
10:30:39: Loading nut/conf/repository.nut
10:30:39: Loading nut/conf/ethernut50f.conf
10:30:39: OK
10:30:51: nut/conf/arch/cm3/stm32usart.nut:496: attempt to call upvalue 'CK_CHOICE' (a nil value)
10:31:29: Creating Makefiles for arm-gcc in nutbld
10:31:29: Creating header files in nutbld
10:31:29: OK
10:31:31: ----- Running 'make clean' -----
10:31:31: Located D:\dev\trunk\Ethernut\ethernutmix\nut\tools\win32\make.exe
10:31:38: ----- 'make clean' terminated successfully -----
10:31:38: ----- Running 'make all' -----
10:31:38: Located D:\dev\trunk\Ethernut\ethernutmix\nut\tools\win32\make.exe
../../nut/fs/phatfs.c: In function 'PhatFileWrite':
../../nut/fs/phatfs.c:699:29: error: taking address of packed member of 'struct _PHATDIRENT' may result in an unaligned pointer value [-Werror=address-of-packed-member]
  699 |             GetDosTimeStamp(&fcb->f_dirent.dent_mtime, &fcb->f_dirent.dent_mdate);
      |                             ^~~~~~~~~~~~~~~~~~~~~~~~~
../../nut/fs/phatfs.c:699:56: error: taking address of packed member of 'struct _PHATDIRENT' may result in an unaligned pointer value [-Werror=address-of-packed-member]
  699 |             GetDosTimeStamp(&fcb->f_dirent.dent_mtime, &fcb->f_dirent.dent_mdate);
      |                                                        ^~~~~~~~~~~~~~~~~~~~~~~~~
cc1.exe: all warnings being treated as errors
make[1]: *** [phatfs.o] Error 1
make: *** [all] Error 2
10:34:34: ----- 'make all' failed with error 2 -----

With Yagarto, I get the following log:

10:40:33: Creating Makefiles for arm-gcc in nutbld
10:40:33: Creating header files in nutbld
10:40:34: OK
10:40:35: ----- Running 'make clean' -----
10:40:35: Located D:\dev\trunk\Ethernut\ethernutmix\nut\tools\win32\make.exe
10:40:42: ----- 'make clean' terminated successfully -----
10:40:42: ----- Running 'make all' -----
10:40:42: Located D:\dev\trunk\Ethernut\ethernutmix\nut\tools\win32\make.exe
../../nut/crt/setenv.c:176:10: error: conflicting types for 'unsetenv'
In file included from ../../nut/crt/setenv.c:36:0:
d:/dev/trunk/ethernut/yagarto/lib/gcc/../../arm-none-eabi/sys-include/stdlib.h:196:5: note: previous declaration of 'unsetenv' was here
make[1]: *** [setenv.o] Error 1
make: *** [all] Error 2
10:42:16: ----- 'make all' failed with error 2 -----


Isn't there perhaps an older, known stable release, where I just can compile the basic nut library for my ethernut5? 

Best regards, 
   Nikolas


More information about the En-Nut-Discussion mailing list