Hi,
I am trying to include the CMSIS-NN libraries inside the segger project. Since they are not available in the software package inside Segger Embedded Studio, I pulled in the repo and copied the file manually to the include location. Here is what I did step by step:
- Cloned the https://github.com/ARM-software/CMSIS_5 repsitory
- Copied the NN folder inside $(PackagesDir)/CMSIS_5/CMSIS/ folder
- Added the entry $(PackagesDir)/CMSIS_5/CMSIS/NN/Include to project options->preprocessor (common configuration) -> User include directories inside segger
- Built the NN library using the command (using instructions posted here https://github.com/ARM-software/CMSIS_5/tree/develop/CMSIS/NN ):
- cmake .. -DCMAKE_TOOLCHAIN_FILE=../../../ethos-u-core-platform/cmake/toolchain/arm-none-eabi-gcc.cmake
-DTARGET_CPU=cortex-m4 - make
- cmake .. -DCMAKE_TOOLCHAIN_FILE=../../../ethos-u-core-platform/cmake/toolchain/arm-none-eabi-gcc.cmake
- Copied the generated libcmsis-nn.a file to the $(PackagesDir)/CMSIS_5/CMSIS/lib/ES folder
- Added the entry $(PackagesDir)/CMSIS_5/CMSIS/Lib/ES/libcmsis-nn.a to linker->additional input files inside segger
- I included the #include "arm_nnfunctions.h" headerand tried compiling a code with one function that is available inside the NN library (function name is arm_convolve_HWC_q7_RGB)
All entries were added inside segger under the common configuration.
However, during compile time, I get the following error:
undefined reference to `arm_convolve_HWC_q7_RGB'