This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

Dead in the water - "Error starting process make"

Hi Folks,

Windows 10, clean install of ncs v1.2.0, using nRF5340-PDK with SES 4.42a.
Project blinky rebuilds and runs fine. 
Now I need a zephyr example of creating a simple library.   My library will be DSP related.  I desire that it can be easily included into multiple related projects on the nRF5340.   
So I found the following:   ncs/zephyr/samples/application_development/external_lib

It is a hello world example of a library target.

When I go to compile, I get the following output:

Rebuilding ‘C:/Users/sandbox/dev/ncs/zephyr/misc/empty_file.c’ from solution ‘build’ in configuration ‘Common’
Rebuilding ‘zephyr/include/generated/driver-validation.h’ from solution ‘build’ in configuration ‘Common’
1> Combining ‘zephyr/include/generated/driver-validation.h’
Rebuilding ‘zephyr/CMakeFiles/driver_validation_h_target’ from solution ‘build’ in configuration ‘Common’
Rebuilding ‘zephyr/driver_validation_h_target’ from solution ‘build’ in configuration ‘Common’
Rebuilding ‘zephyr/include/generated/kobj-types-enum.h’ from solution ‘build’ in configuration ‘Common’
1> Combining ‘zephyr/include/generated/kobj-types-enum.h’
Rebuilding ‘zephyr/include/generated/otype-to-str.h’ from solution ‘build’ in configuration ‘Common’
Rebuilding ‘zephyr/CMakeFiles/kobj_types_h_target’ from solution ‘build’ in configuration ‘Common’
Rebuilding ‘zephyr/kobj_types_h_target’ from solution ‘build’ in configuration ‘Common’
Rebuilding ‘C:/Users/sandbox/dev/ncs/zephyr/include/dt-bindings/gpio/gpio.h’ from solution ‘build’ in configuration ‘Common’
Rebuilding ‘C:/Users/sandbox/dev/ncs/zephyr/include/dt-bindings/i2c/i2c.h’ from solution ‘build’ in configuration ‘Common’
Rebuilding ‘zephyr/misc/generated/syscalls.json’ from solution ‘build’ in configuration ‘Common’
1> Combining ‘zephyr/misc/generated/syscalls.json’
Rebuilding ‘zephyr/include/generated/syscall_list.h’ from solution ‘build’ in configuration ‘Common’
1> Combining ‘zephyr/include/generated/syscall_list.h’
Rebuilding ‘zephyr/CMakeFiles/syscall_list_h_target’ from solution ‘build’ in configuration ‘Common’
Rebuilding ‘zephyr/include/generated/syscall_dispatch.c’ from solution ‘build’ in configuration ‘Common’
Rebuilding ‘zephyr/syscall_list_h_target’ from solution ‘build’ in configuration ‘Common’
Rebuilding ‘cmake_object_order_depends_target_offsets’ from solution ‘build’ in configuration ‘Common’
Rebuilding ‘zephyr/CMakeFiles/offsets.dir/arch/arm/core/offsets/offsets.c.obj’ from solution ‘build’ in configuration ‘Common’
1> Compiling ‘offsets.c’
Rebuilding ‘zephyr/offsets’ from solution ‘build’ in configuration ‘Common’
Rebuilding ‘zephyr/include/generated/offsets.h’ from solution ‘build’ in configuration ‘Common’
1> Combining ‘zephyr/include/generated/offsets.h’
Rebuilding ‘zephyr/CMakeFiles/offsets_h’ from solution ‘build’ in configuration ‘Common’
Rebuilding ‘zephyr/offsets_h’ from solution ‘build’ in configuration ‘Common’
Rebuilding ‘zephyr/zephyr_generated_headers’ from solution ‘build’ in configuration ‘Common’
Rebuilding ‘cmake_object_order_depends_target_..__modules__hal__nordic’ from solution ‘build’ in configuration ‘Common’
Rebuilding ‘cmake_object_order_depends_target_..__nrf__lib__fatal_error’ from solution ‘build’ in configuration ‘Common’
Rebuilding ‘mylib/src/mylib_project-stamp/mylib_project-mkdir’ from solution ‘build’ in configuration ‘Common’
1> Combining ‘mylib/src/mylib_project-stamp/mylib_project-mkdir’
Rebuilding ‘mylib/src/mylib_project-stamp/mylib_project-download’ from solution ‘build’ in configuration ‘Common’
1> Combining ‘mylib/src/mylib_project-stamp/mylib_project-download’
Rebuilding ‘mylib/src/mylib_project-stamp/mylib_project-update’ from solution ‘build’ in configuration ‘Common’
1> Combining ‘mylib/src/mylib_project-stamp/mylib_project-update’
Rebuilding ‘mylib/src/mylib_project-stamp/mylib_project-patch’ from solution ‘build’ in configuration ‘Common’
1> Combining ‘mylib/src/mylib_project-stamp/mylib_project-patch’
Rebuilding ‘mylib/src/mylib_project-stamp/mylib_project-configure’ from solution ‘build’ in configuration ‘Common’
1> Combining ‘mylib/src/mylib_project-stamp/mylib_project-configure’
Rebuilding ‘mylib/src/mylib_project-stamp/mylib_project-build’ from solution ‘build’ in configuration ‘Common’
1> Combining ‘mylib/src/mylib_project-stamp/mylib_project-build’
1> Error starting process make
Build failed

Is there anyway to get more info on what failed so I can proceed on my mission....or alternatively, is there a another example of creating a simple library that will work instead?

Kind regards! 

Parents
  • Hi, 

    How did you build the project?

    With west, you could run as:
    C:\ncs\zephyr\samples\application_development\external_lib>west build -b nrf5340_dk_nrf5340_cpuapp

    With Segger, you should set as:

    I can build the project with these two methods. Could you try again?

    -Amanda H.

  • Hi Amanda,

    Yes, I tried building with both those routes, but they both failed.   In order to succeed, make and mkdir need to be installed and found during the build.   Did I miss a step during tools setup?   The install was done on a completely new Windows copy, and I believe I properly followed the instructions in ncs Getting Starrted.

  • Hi Amanda,

    I reinstalled Windows 10 and reinstalled ncs from scratch again.  Same result.   So I did not forget a step.  This is an install and tools issue.  The workaround is available as I wrote above (install make, and run west from bash).   I still would like to know how to add  library source files to the external_lib project so a library can be easily developed within SES.

  • Hi, 

    navigator said:
    I reinstalled Windows 10 and reinstalled ncs from scratch again.  Same result.

    Could you provide the complete log while the build fails? (from segger or include the command if you use the west build. ) Please also check with Installing the NCS manually and Building and programming a sample application.

    navigator said:
     I still would like to know how to add  library source files to the external_lib project so a library can be easily developed within SES.

    What library would you want to add to the external_lib project? This post shows how to add the LPCOMP library into the project. 

    -Amanda H.

  • Hi Amanda....below is the build output from a command line pristine build of external_lib sample.  I used a clean Windows 10 install with no extra tools loaded other than those installed by NCS Getting Started Assistant.   Thanks for your advice, but this does not appear to be a Nordic specific issue...just that I run into it while trying to get up & running on the nRF5340-PDK.   My solution was to install make (choco install make), and fix the makefile so it doesn't crash when executing 'mkdir -p'.

    c:\ncs\zephyr\samples\application_development\external_lib>west build -p -b nrf5340_dk_nrf5340_cpuapp 
    -- west build: making build dir c:\ncs\zephyr\samples\application_development\external_lib\build pristine
    -- west build: build configuration:
           source directory: c:\ncs\zephyr\samples\application_development\external_lib
           build directory: c:\ncs\zephyr\samples\application_development\external_lib\build
           BOARD: nrf5340_dk_nrf5340_cpuapp (origin: command line)
    -- west build: generating a build system
    -- Zephyr version: 2.1.99
    -- Found PythonInterp: C:/Python38/python.exe (found suitable version "3.8.2", minimum required is "3.6") 
    -- git describe failed: fatal: not a git repository (or any of the parent directories): .git;
       BUILD_VERSION is left undefined
    -- Selected BOARD nrf5340_dk_nrf5340_cpuapp
    -- Found west: C:/Python38/Scripts/west.exe (found suitable version "0.6.3", minimum required is "0.6.0")
    -- Loading C:/ncs/zephyr/boards/arm/nrf5340_dk_nrf5340/nrf5340_dk_nrf5340_cpuapp.dts as base
    Devicetree configuration written to C:/ncs/zephyr/samples/application_development/external_lib/build/zephyr/include/generated/devicetree.conf
    Parsing C:/ncs/zephyr/Kconfig
    C:/ncs/nrf\lib\fprotect/Kconfig:20: WARNING: dt_int_val is deprecated.
    C:/ncs/bootloader/mcuboot/zephyr/Kconfig:37: WARNING: dt_int_val is deprecated.
    Loaded configuration 'C:/ncs/zephyr/boards/arm/nrf5340_dk_nrf5340/nrf5340_dk_nrf5340_cpuapp_defconfig'
    Merged configuration 'C:/ncs/zephyr/samples/application_development/external_lib/prj.conf'
    Configuration saved to 'C:/ncs/zephyr/samples/application_development/external_lib/build/zephyr/.config'
    -- The C compiler identification is GNU 8.3.1
    -- The CXX compiler identification is GNU 8.3.1
    -- The ASM compiler identification is GNU
    -- Found assembler: C:/gnuarmemb/bin/arm-none-eabi-gcc.exe
    -- Cache files will be written to: C:/ncs/zephyr/.cache
    -- Configuring done
    -- Generating done
    -- Build files have been written to: C:/ncs/zephyr/samples/application_development/external_lib/build
    -- west build: building application
    [1/133] Generating include/generated/kobj-types-enum.h, include/generated/otype-to-str.h
    [2/133] Generating include/generated/driver-validation.h
    [3/133] Generating misc/generated/syscalls.json
    [4/133] Creating directories for 'mylib_project'
    [5/133] No download step for 'mylib_project'
    [6/133] No patch step for 'mylib_project'
    [7/133] No update step for 'mylib_project'
    [8/133] No configure step for 'mylib_project'
    [9/133] Performing build step for 'mylib_project'
    FAILED: mylib/src/mylib_project-stamp/mylib_project-build mylib/lib/libmylib.a 
    cmd.exe /C "cd /D C:\ncs\zephyr\samples\application_development\external_lib\mylib && make PREFIX=C:/ncs/zephyr/samples/application_development/external_lib/build/mylib CC=C:/gnuarmemb/bin/arm-none-eabi-gcc.exe AR=C:/gnuarmemb/bin/arm-none-eabi-ar.exe "CFLAGS=-IC:/ncs/zephyr/include -IC:/ncs/zephyr/samples/application_development/external_lib/build/zephyr/include/generated -IC:/ncs/zephyr/soc/arm/nordic_nrf/nrf53 -IC:/ncs/zephyr/lib/libc/minimal/include -IC:/ncs/zephyr/ext/hal/cmsis/Core/Include -IC:/ncs/nrf/include -IC:/ncs/modules/hal/nordic/nrfx -IC:/ncs/modules/hal/nordic/nrfx/drivers/include -IC:/ncs/modules/hal/nordic/nrfx/mdk -IC:/ncs/modules/hal/nordic/. -Ic:/gnuarmemb/bin/../lib/gcc/arm-none-eabi/8.3.1/include -Ic:/gnuarmemb/bin/../lib/gcc/arm-none-eabi/8.3.1/include-fixed -DKERNEL -D__ZEPHYR__=1 -D_FORTIFY_SOURCE=2 -D__PROGRAM_START -DUSE_PARTITION_MANAGER=0 -DNRF5340_XXAA_APPLICATION -Os -imacrosC:/ncs/zephyr/samples/application_development/external_lib/build/zephyr/include/generated/autoconf.h -ffreestanding -fno-common -g -mthumb -mcpu=cortex-m33 -imacrosC:/ncs/zephyr/include/toolchain/zephyr_stdint.h -Wall -Wformat -Wformat-security -Wno-format-zero-length -Wno-main -Wno-pointer-sign -Wpointer-arith -Wno-unused-but-set-variable -Werror=implicit-int -fno-asynchronous-unwind-tables -fno-pie -fno-pic -fno-strict-overflow -fno-reorder-functions -fno-defer-pop -fmacro-prefix-map=C:/ncs/zephyr/samples/application_development/external_lib=CMAKE_SOURCE_DIR -fmacro-prefix-map=C:/ncs/zephyr=ZEPHYR_BASE -ffunction-sections -fdata-sections -mabi=aapcs -march=armv8-m.main+dsp -std=c99 -nostdinc -isystemC:/ncs/zephyr/lib/libc/minimal/include -isystemc:/gnuarmemb/bin/../lib/gcc/arm-none-eabi/8.3.1/include -isystemc:/gnuarmemb/bin/../lib/gcc/arm-none-eabi/8.3.1/include-fixed" && "C:\Program Files\CMake\bin\cmake.exe" -E touch C:/ncs/zephyr/samples/application_development/external_lib/build/mylib/src/mylib_project-stamp/mylib_project-build"
    'make' is not recognized as an internal or external command,
    operable program or batch file.
    [10/133] Generating include/generated/syscall_dispatch.c, include/generated/syscall_list.h
    ninja: build stopped: subcommand failed.
    

    For the second item, I might not have been clear. -- my ask is ease of use.   I am looking for how to add the library source files into SES so that SES can be used to edit, build, and debug the library.    So the concise question for this example is: how do I add mylib.c into the SES solution?  (all I see is main.c)

  • Hi, 

    The log indicates:
    'make' is not recognized as an internal or external command,
    operable program or batch file.

    You need to install the tool to use make.

    navigator said:
    o the concise question for this example is: how do I add mylib.c into the SES solution?  (all I see is main.c)

     nRF Connect SDK (NCS) projects are configured from CMake. Please take a look the CMakeLists.txt under \ncs\zephyr\samples\application_development\external_lib

    -Amanda H.

Reply
  • Hi, 

    The log indicates:
    'make' is not recognized as an internal or external command,
    operable program or batch file.

    You need to install the tool to use make.

    navigator said:
    o the concise question for this example is: how do I add mylib.c into the SES solution?  (all I see is main.c)

     nRF Connect SDK (NCS) projects are configured from CMake. Please take a look the CMakeLists.txt under \ncs\zephyr\samples\application_development\external_lib

    -Amanda H.

Children
Related