> Then I tried: > cd nuttx > ./tools/configure.sh ../boards/stm32f4discovery:nsh
This does not work with out-of-tree boards, you need the path to the board. > In other words, it looks like it expects a different structure for > externally defined boards, than the provided ones. Correct? It doesn't expect a different structure but it doesn't support all the structures of in-tree boards. With an external custom board the Make.defs file needs to be located at the same level as the defconfig. Example: ls ../boards/custom_board/nsh defconfig Make.defs You also need to set the CUSTOM* configs as said earlier. On Tue, Jul 14, 2020 at 10:17 PM Fotis Panagiotopoulos <f.j.pa...@gmail.com> wrote: > > Hi, > > I am trying to configure NuttX with an external board, following your > advice, but I just can't make it work... > > My current workspace structure is the following: > ├── apps > ├── boards > ├── Makefile > └── nuttx > > I copied the directory ${TOPDIR}/nuttx/boards/arm/stm32/stm32f4discovery > into ${TOPDIR}/boards/stm32f4discovery, to use it as an example. > > Then I tried: > cd nuttx > ./tools/configure.sh ../boards/stm32f4discovery:nsh > But it fails with: > Directory for ../boards/stm32f4discovery:nsh does not exist. > Options are: ... > > I then tried: > cd nuttx > ./tools/configure.sh ../boards/stm32f4discovery/configs/nsh > But again: > File Make.defs could not be found > > I started looking into the code of configure.sh script. > As I see, when it detects that an external board configuration is to be > used, it does: > configpath=${TOPDIR}/${boardconfig} > and generally it uses the dir ${TOPDIR}/${boardconfig}, assuming that every > needed file will be in this specific directory. > > In other words, it looks like it expects a different structure for > externally defined boards, than the provided ones. Correct? > > > Στις Τρί, 14 Ιουλ 2020 στις 6:42 μ.μ., ο/η Gregory Nutt <spudan...@gmail.com> > έγραψε: > > > > > > When not yet creating a custom board, I simply copy the config file and > > put it somewhere inside the workspace. If you eventually create a custom > > board, you can then place it in the proper directory > > (board/configs/*/defconfig). Doing it this way also allows you to configure > > nuttx with my framework using the "make configure" command. > > > > configure.sh works with board directories that are outside of the source > > tree as well. You never have to put a custom board configuration in the > > repository's boards/ sub-directory. Instead of > > > > tools/configure.sh <board>:<config> > > > > Use > > > > tools/configures.sh <path to the custom board defconfig directory> > > > >