Compile error of the C++ library for Portenta H7

Hello,
I have done the process of generating a project and have generated the C++ library deployment as I want to modify some parts of the code.
I am trying for now the downloaded C++ library as generated in the edge-impulse webpage and I have added the main.cpp file from the following tutorial https://docs.edgeimpulse.com/docs/run-inference/cpp-library/deploy-your-model-as-a-c-library with a raw feature from my project.

I am working in an Ubuntu PC and I use Visual Studio Code as my editor. And I would like to generate the binary code so it can be loaded and run to the Portenta H7.
I have installed arm-none-eabi-gcc on the system, but when I complie I get an error that you can find in this topic. Following are the files and the error that I obtain.

The makefile in the project that I am compiling is the following:

# Tool macros
CC = arm-none-eabi-gcc
CXX = arm-none-eabi-g++
# Settings
NAME = app
BUILD_PATH = .
# Location of main.cpp (must use C++ compiler for main)
CXXSOURCES = main.cpp
# Search path for header files (current directory)
CFLAGS += -I.
# C and C++ Compiler flags
CFLAGS += -Wall						# Include all warnings
CFLAGS += -g						# Generate GDB debugger information
CFLAGS += -Wno-strict-aliasing		# Disable warnings about strict aliasing
CFLAGS += -Os						# Optimize for size
# C++ only compiler flags
CXXFLAGS += -std=c++14				# Use C++14 standard
# Linker flags
LDFLAGS += -lm 						# Link to math.h
LDFLAGS += -lstdc++					# Link to stdc++.h
# Include C source code for required libraries
CSOURCES += $(wildcard edge-impulse-sdk/CMSIS/DSP/Source/TransformFunctions/*.c) \
			$(wildcard edge-impulse-sdk/CMSIS/DSP/Source/CommonTables/*.c) \
			$(wildcard edge-impulse-sdk/CMSIS/DSP/Source/BasicMathFunctions/*.c) \
			$(wildcard edge-impulse-sdk/CMSIS/DSP/Source/ComplexMathFunctions/*.c) \
			$(wildcard edge-impulse-sdk/CMSIS/DSP/Source/FastMathFunctions/*.c) \
			$(wildcard edge-impulse-sdk/CMSIS/DSP/Source/SupportFunctions/*.c) \
			$(wildcard edge-impulse-sdk/CMSIS/DSP/Source/MatrixFunctions/*.c) \
			$(wildcard edge-impulse-sdk/CMSIS/DSP/Source/StatisticsFunctions/*.c)
# Include C++ source code for required libraries
CXXSOURCES += 	$(wildcard tflite-model/*.cpp) \
				$(wildcard edge-impulse-sdk/dsp/kissfft/*.cpp) \
				$(wildcard edge-impulse-sdk/dsp/dct/*.cpp) \
				$(wildcard edge-impulse-sdk/dsp/memory.cpp) \
				$(wildcard edge-impulse-sdk/porting/posix/*.c*) \
				$(wildcard edge-impulse-sdk/porting/mingw32/*.c*)
CCSOURCES +=
# Use TensorFlow Lite for Microcontrollers (TFLM)
CFLAGS += -DTF_LITE_DISABLE_X86_NEON=1
CSOURCES +=	edge-impulse-sdk/tensorflow/lite/c/common.c
CCSOURCES +=	$(wildcard edge-impulse-sdk/tensorflow/lite/kernels/*.cc) \
				$(wildcard edge-impulse-sdk/tensorflow/lite/kernels/internal/*.cc) \
				$(wildcard edge-impulse-sdk/tensorflow/lite/micro/kernels/*.cc) \
				$(wildcard edge-impulse-sdk/tensorflow/lite/micro/*.cc) \
				$(wildcard edge-impulse-sdk/tensorflow/lite/micro/memory_planner/*.cc) \
				$(wildcard edge-impulse-sdk/tensorflow/lite/core/api/*.cc)
# Include CMSIS-NN if compiling for an Arm target that supports it
ifeq (${CMSIS_NN}, 1)
	# Include CMSIS-NN and CMSIS-DSP header files
	CFLAGS += -Iedge-impulse-sdk/CMSIS/NN/Include/
	CFLAGS += -Iedge-impulse-sdk/CMSIS/DSP/PrivateInclude/
	# C and C++ compiler flags for CMSIS-NN and CMSIS-DSP
	CFLAGS += -Wno-unknown-attributes 					# Disable warnings about unknown attributes
	CFLAGS += -DEI_CLASSIFIER_TFLITE_ENABLE_CMSIS_NN=1	# Use CMSIS-NN functions in the SDK
	CFLAGS += -D__ARM_FEATURE_DSP=1 					# Enable CMSIS-DSP optimized features
	CFLAGS += -D__GNUC_PYTHON__=1						# Enable CMSIS-DSP intrisics (non-C features)
	# Include C source code for required CMSIS libraries
	CSOURCES += $(wildcard edge-impulse-sdk/CMSIS/NN/Source/ActivationFunctions/*.c) \
				$(wildcard edge-impulse-sdk/CMSIS/NN/Source/BasicMathFunctions/*.c) \
				$(wildcard edge-impulse-sdk/CMSIS/NN/Source/ConcatenationFunctions/*.c) \
				$(wildcard edge-impulse-sdk/CMSIS/NN/Source/ConvolutionFunctions/*.c) \
				$(wildcard edge-impulse-sdk/CMSIS/NN/Source/FullyConnectedFunctions/*.c) \
				$(wildcard edge-impulse-sdk/CMSIS/NN/Source/NNSupportFunctions/*.c) \
				$(wildcard edge-impulse-sdk/CMSIS/NN/Source/PoolingFunctions/*.c) \
				$(wildcard edge-impulse-sdk/CMSIS/NN/Source/ReshapeFunctions/*.c) \
				$(wildcard edge-impulse-sdk/CMSIS/NN/Source/SoftmaxFunctions/*.c) \
				$(wildcard edge-impulse-sdk/CMSIS/NN/Source/SVDFunctions/*.c)
endif
# Generate names for the output object files (*.o)
COBJECTS := $(patsubst %.c,%.o,$(CSOURCES))
CXXOBJECTS := $(patsubst %.cpp,%.o,$(CXXSOURCES))
CCOBJECTS := $(patsubst %.cc,%.o,$(CCSOURCES))
# Default rule
.PHONY: all
all: app
# Compile library source code into object files
$(COBJECTS) : %.o : %.c
$(CXXOBJECTS) : %.o : %.cpp
$(CCOBJECTS) : %.o : %.cc
%.o: %.c
	$(CC) $(CFLAGS) -c $^ -o $@
%.o: %.cc
	$(CXX) $(CFLAGS) $(CXXFLAGS) -c $^ -o $@
%.o: %.cpp
	$(CXX) $(CFLAGS) $(CXXFLAGS) -c $^ -o $@
# Build target (must use C++ compiler)
.PHONY: app
app: $(COBJECTS) $(CXXOBJECTS) $(CCOBJECTS)
ifeq ($(OS), Windows_NT)
	if not exist build mkdir build
else
	mkdir -p $(BUILD_PATH)
endif
	$(CXX) $(COBJECTS) $(CXXOBJECTS) $(CCOBJECTS) -o $(BUILD_PATH)/$(NAME).elf $(LDFLAGS)
	arm-none-eabi-objcopy -O binary $(BUILD_PATH)/$(NAME).elf $(BUILD_PATH)/$(NAME).bin
	strip $(BUILD_PATH)/$(NAME)		
# Remove compiled object files
.PHONY: clean
clean:
ifeq ($(OS), Windows_NT)
	del /Q $(subst /,\,$(patsubst %.c,%.o,$(CSOURCES))) >nul 2>&1 || exit 0
	del /Q $(subst /,\,$(patsubst %.cpp,%.o,$(CXXSOURCES))) >nul 2>&1 || exit 0
	del /Q $(subst /,\,$(patsubst %.cc,%.o,$(CCSOURCES))) >nul 2>&1 || exit 0
else
	rm -f $(COBJECTS)
	rm -f $(CCOBJECTS)
	rm -f $(CXXOBJECTS)
endif

When I compile the project I get the following error:

user@user-msi:~/Escriptori/user-project-1/user-project$ make
mkdir -p .
arm-none-eabi-g++ edge-impulse-sdk/CMSIS/DSP/Source/TransformFunctions/arm_bitreversal2.o 
.....
./app.elf -lm                            -lstdc++
/usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/bin/ld: main.o: in function `(anonymous namespace)::ei_aligned_free(void*)':
/home/sergi/Escriptori/sergisp97-project-1/sergisp97-project/./edge-impulse-sdk/classifier/ei_aligned_malloc.h:102: undefined reference to `ei_free(void*)'
/usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/bin/ld: main.o: in function `(anonymous namespace)::ei_aligned_calloc(unsigned int, unsigned int)':
/home/sergi/Escriptori/sergisp97-project-1/sergisp97-project/./edge-impulse-sdk/classifier/ei_aligned_malloc.h:64: undefined reference to `ei_calloc(unsigned int, unsigned int)'
/usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/bin/ld: main.o: in function `inference_tflite_setup(ei_learning_block_config_tflite_graph_t*, unsigned long long*, TfLiteTensor*, TfLiteTensor*, TfLiteTensor*, TfLiteTensor*, std::unique_ptr<void, void (*)(void*)>&) [clone .constprop.0]':
/home/sergi/Escriptori/sergisp97-project-1/sergisp97-project/./edge-impulse-sdk/classifier/inferencing_engines/tflite_eon.h:52: undefined reference to `ei_read_timer_us()'
/usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/bin/ld: /home/sergi/Escriptori/sergisp97-project-1/sergisp97-project/./edge-impulse-sdk/classifier/inferencing_engines/tflite_eon.h:56: undefined reference to `ei_printf(char const*, ...)'
/usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/bin/ld: main.o: in function `ei::EiAlloc<unsigned long>::allocate(unsigned int)':
/home/sergi/Escriptori/sergisp97-project-1/sergisp97-project/./edge-impulse-sdk/dsp/ei_alloc.h:45: undefined reference to `ei_malloc(unsigned int)'
/usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/bin/ld: main.o: in function `ei::EiAlloc<unsigned long>::deallocate(unsigned long*, unsigned int)':
/home/sergi/Escriptori/sergisp97-project-1/sergisp97-project/./edge-impulse-sdk/dsp/ei_alloc.h:59: undefined reference to `ei_free(void*)'
/usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/bin/ld: main.o: in function `ei::spectral::processing::periodogram(ei::ei_matrix*, ei::ei_matrix*, ei::ei_matrix*, float, unsigned short)':
/home/sergi/Escriptori/sergisp97-project-1/sergisp97-project/./edge-impulse-sdk/dsp/spectral/processing.hpp:462: undefined reference to `ei_free(void*)'
/usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/bin/ld: /home/sergi/Escriptori/sergisp97-project-1/sergisp97-project/./edge-impulse-sdk/dsp/spectral/processing.hpp:439: undefined reference to `ei_calloc(unsigned int, unsigned int)'
/usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/bin/ld: main.o: in function `fill_input_tensor_from_matrix(ei_feature_t*, TfLiteTensor*, unsigned long*, unsigned long, unsigned int)':
/home/sergi/Escriptori/sergisp97-project-1/sergisp97-project/./edge-impulse-sdk/classifier/inferencing_engines/tflite_helper.h:88: undefined reference to `ei_printf(char const*, ...)'
/usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/bin/ld: /home/sergi/Escriptori/sergisp97-project-1/sergisp97-project/./edge-impulse-sdk/classifier/inferencing_engines/tflite_helper.h:95: undefined reference to `ei_printf(char const*, ...)'
/usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/bin/ld: main.o: in function `fill_output_matrix_from_tensor(TfLiteTensor*, ei::ei_matrix*)':
/home/sergi/Escriptori/sergisp97-project-1/sergisp97-project/./edge-impulse-sdk/classifier/inferencing_engines/tflite_helper.h:245: undefined reference to `ei_printf(char const*, ...)'
/usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/bin/ld: /home/sergi/Escriptori/sergisp97-project-1/sergisp97-project/./edge-impulse-sdk/classifier/inferencing_engines/tflite_helper.h:270: undefined reference to `ei_printf(char const*, ...)'
/usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/bin/ld: main.o: in function `run_inference':
/home/sergi/Escriptori/sergisp97-project-1/sergisp97-project/edge-impulse-sdk/classifier/ei_run_classifier.h:175: undefined reference to `ei_run_impulse_check_canceled()'
/usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/bin/ld: main.o: in function `run_classifier_init':
/home/sergi/Escriptori/sergisp97-project-1/sergisp97-project/edge-impulse-sdk/classifier/ei_run_dsp.h:1406: undefined reference to `ei_free(void*)'
/usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/bin/ld: main.o: in function `fill_input_tensor_from_signal(ei::ei_signal_t*, TfLiteTensor*)':
/home/sergi/Escriptori/sergisp97-project-1/sergisp97-project/./edge-impulse-sdk/classifier/inferencing_engines/tflite_helper.h:130: undefined reference to `ei_printf(char const*, ...)'
/usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/bin/ld: /home/sergi/Escriptori/sergisp97-project-1/sergisp97-project/./edge-impulse-sdk/classifier/inferencing_engines/tflite_helper.h:218: undefined reference to `ei_printf(char const*, ...)'
/usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/bin/ld: main.o: in function `run_nn_inference_from_dsp(ei_learning_block_config_tflite_graph_t*, ei::ei_signal_t*, ei::ei_matrix*)':
/home/sergi/Escriptori/sergisp97-project-1/sergisp97-project/./edge-impulse-sdk/classifier/inferencing_engines/tflite_eon.h:156: undefined reference to `ei_read_timer_us()'
/usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/bin/ld: main.o: in function `(anonymous namespace)::extract_mfcc_run_slice(ei::ei_signal_t*, ei::ei_matrix*, ei_dsp_config_mfcc_t*, float, ei::matrix_size_t*, int)':
/home/sergi/Escriptori/sergisp97-project-1/sergisp97-project/edge-impulse-sdk/classifier/ei_run_dsp.h:336: undefined reference to `ei_printf(char const*, ...)'
/usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/bin/ld: main.o: in function `(anonymous namespace)::extract_mfe_run_slice(ei::ei_signal_t*, ei::ei_matrix*, ei_dsp_config_mfe_t*, float, ei::matrix_size_t*)':
/home/sergi/Escriptori/sergisp97-project-1/sergisp97-project/edge-impulse-sdk/classifier/ei_run_dsp.h:925: undefined reference to `ei_printf(char const*, ...)'
/usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/bin/ld: main.o: in function `(anonymous namespace)::extract_spectrogram_run_slice(ei::ei_signal_t*, ei::ei_matrix*, ei_dsp_config_spectrogram_t*, float, ei::matrix_size_t*)':
/home/sergi/Escriptori/sergisp97-project-1/sergisp97-project/edge-impulse-sdk/classifier/ei_run_dsp.h:607: undefined reference to `ei_printf(char const*, ...)'
/usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/bin/ld: main.o: in function `(anonymous namespace)::extract_spectrogram_features(ei::ei_signal_t*, ei::ei_matrix*, void*, float)':
/home/sergi/Escriptori/sergisp97-project-1/sergisp97-project/edge-impulse-sdk/classifier/ei_run_dsp.h:537: undefined reference to `ei_printf(char const*, ...)'
/usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/bin/ld: /home/sergi/Escriptori/sergisp97-project-1/sergisp97-project/edge-impulse-sdk/classifier/ei_run_dsp.h:538: undefined reference to `ei_printf(char const*, ...)'
/usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/bin/ld: main.o:/home/sergi/Escriptori/sergisp97-project-1/sergisp97-project/edge-impulse-sdk/classifier/ei_run_dsp.h:562: more undefined references to `ei_printf(char const*, ...)' follow
/usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/bin/ld: main.o: in function `process_impulse_continuous':
/home/sergi/Escriptori/sergisp97-project-1/sergisp97-project/edge-impulse-sdk/classifier/ei_run_classifier.h:315: undefined reference to `__sync_synchronize'
/usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/bin/ld: /home/sergi/Escriptori/sergisp97-project-1/sergisp97-project/edge-impulse-sdk/classifier/ei_run_classifier.h:324: undefined reference to `ei_read_timer_us()'
/usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/bin/ld: /home/sergi/Escriptori/sergisp97-project-1/sergisp97-project/edge-impulse-sdk/classifier/ei_run_classifier.h:335: undefined reference to `ei_printf(char const*, ...)'
/usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/bin/ld: /home/sergi/Escriptori/sergisp97-project-1/sergisp97-project/edge-impulse-sdk/classifier/ei_run_classifier.h:358: undefined reference to `ei_printf(char const*, ...)'
/usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/bin/ld: /home/sergi/Escriptori/sergisp97-project-1/sergisp97-project/edge-impulse-sdk/classifier/ei_run_classifier.h:376: undefined reference to `ei_printf(char const*, ...)'
/usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/bin/ld: /home/sergi/Escriptori/sergisp97-project-1/sergisp97-project/edge-impulse-sdk/classifier/ei_run_classifier.h:380: undefined reference to `ei_run_impulse_check_canceled()'
/usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/bin/ld: /home/sergi/Escriptori/sergisp97-project-1/sergisp97-project/edge-impulse-sdk/classifier/ei_run_classifier.h:389: undefined reference to `ei_read_timer_us()'
/usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/bin/ld: /home/sergi/Escriptori/sergisp97-project-1/sergisp97-project/edge-impulse-sdk/classifier/ei_run_classifier.h:393: undefined reference to `ei_printf(char const*, ...)'
/usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/bin/ld: /home/sergi/Escriptori/sergisp97-project-1/sergisp97-project/edge-impulse-sdk/classifier/ei_run_classifier.h:395: undefined reference to `ei_printf_float(float)'
/usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/bin/ld: /home/sergi/Escriptori/sergisp97-project-1/sergisp97-project/edge-impulse-sdk/classifier/ei_run_classifier.h:396: undefined reference to `ei_printf(char const*, ...)'
/usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/bin/ld: /home/sergi/Escriptori/sergisp97-project-1/sergisp97-project/edge-impulse-sdk/classifier/ei_run_classifier.h:398: undefined reference to `ei_printf(char const*, ...)'
/usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/bin/ld: /home/sergi/Escriptori/sergisp97-project-1/sergisp97-project/edge-impulse-sdk/classifier/ei_run_classifier.h:402: undefined reference to `ei_read_timer_us()'
/usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/bin/ld: main.o: in function `process_impulse_continuous':
/home/sergi/Escriptori/sergisp97-project-1/sergisp97-project/edge-impulse-sdk/classifier/ei_run_dsp.h:1472: undefined reference to `ei_printf(char const*, ...)'
/usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/bin/ld: main.o: in function `process_impulse_continuous':
/home/sergi/Escriptori/sergisp97-project-1/sergisp97-project/edge-impulse-sdk/classifier/ei_run_classifier.h:423: undefined reference to `ei_read_timer_us()'
/usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/bin/ld: /home/sergi/Escriptori/sergisp97-project-1/sergisp97-project/edge-impulse-sdk/classifier/ei_run_classifier.h:427: undefined reference to `ei_printf(char const*, ...)'
/usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/bin/ld: main.o: in function `(anonymous namespace)::extract_mfe_features(ei::ei_signal_t*, ei::ei_matrix*, void*, float)':
/home/sergi/Escriptori/sergisp97-project-1/sergisp97-project/edge-impulse-sdk/classifier/ei_run_dsp.h:828: undefined reference to `ei_printf(char const*, ...)'
/usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/bin/ld: /home/sergi/Escriptori/sergisp97-project-1/sergisp97-project/edge-impulse-sdk/classifier/ei_run_dsp.h:829: undefined reference to `ei_printf(char const*, ...)'
/usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/bin/ld: /home/sergi/Escriptori/sergisp97-project-1/sergisp97-project/edge-impulse-sdk/classifier/ei_run_dsp.h:858: undefined reference to `ei_printf(char const*, ...)'
/usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/bin/ld: /home/sergi/Escriptori/sergisp97-project-1/sergisp97-project/edge-impulse-sdk/classifier/ei_run_dsp.h:874: undefined reference to `ei_printf(char const*, ...)'
/usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/bin/ld: main.o:/home/sergi/Escriptori/sergisp97-project-1/sergisp97-project/edge-impulse-sdk/classifier/ei_run_dsp.h:275: more undefined references to `ei_printf(char const*, ...)' follow
/usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/bin/ld: main.o: in function `(anonymous namespace)::extract_spectrogram_per_slice_features(ei::ei_signal_t*, ei::ei_matrix*, void*, float, ei::matrix_size_t*)':
/home/sergi/Escriptori/sergisp97-project-1/sergisp97-project/edge-impulse-sdk/classifier/ei_run_dsp.h:658: undefined reference to `ei_printf_float(float)'
/usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/bin/ld: /home/sergi/Escriptori/sergisp97-project-1/sergisp97-project/edge-impulse-sdk/classifier/ei_run_dsp.h:659: undefined reference to `ei_printf(char const*, ...)'
/usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/bin/ld: /home/sergi/Escriptori/sergisp97-project-1/sergisp97-project/edge-impulse-sdk/classifier/ei_run_dsp.h:660: undefined reference to `ei_printf_float(float)'
/usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/bin/ld: /home/sergi/Escriptori/sergisp97-project-1/sergisp97-project/edge-impulse-sdk/classifier/ei_run_dsp.h:695: undefined reference to `ei_printf(char const*, ...)'
/usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/bin/ld: /home/sergi/Escriptori/sergisp97-project-1/sergisp97-project/edge-impulse-sdk/classifier/ei_run_dsp.h:666: undefined reference to `ei_printf(char const*, ...)'
/usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/bin/ld: /home/sergi/Escriptori/sergisp97-project-1/sergisp97-project/edge-impulse-sdk/classifier/ei_run_dsp.h:675: undefined reference to `ei_free(void*)'
/usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/bin/ld: /home/sergi/Escriptori/sergisp97-project-1/sergisp97-project/edge-impulse-sdk/classifier/ei_run_dsp.h:680: undefined reference to `ei_calloc(unsigned int, unsigned int)'
/usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/bin/ld: main.o: in function `(anonymous namespace)::extract_mfe_per_slice_features(ei::ei_signal_t*, ei::ei_matrix*, void*, float, ei::matrix_size_t*)':
/home/sergi/Escriptori/sergisp97-project-1/sergisp97-project/edge-impulse-sdk/classifier/ei_run_dsp.h:998: undefined reference to `ei_printf(char const*, ...)'
/usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/bin/ld: /home/sergi/Escriptori/sergisp97-project-1/sergisp97-project/edge-impulse-sdk/classifier/ei_run_dsp.h:999: undefined reference to `ei_printf_float(float)'
/usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/bin/ld: /home/sergi/Escriptori/sergisp97-project-1/sergisp97-project/edge-impulse-sdk/classifier/ei_run_dsp.h:1000: undefined reference to `ei_printf(char const*, ...)'
/usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/bin/ld: /home/sergi/Escriptori/sergisp97-project-1/sergisp97-project/edge-impulse-sdk/classifier/ei_run_dsp.h:1001: undefined reference to `ei_printf_float(float)'
.........
/home/sergi/Escriptori/sergisp97-project-1/sergisp97-project/edge-impulse-sdk/dsp/kissfft/kiss_fft.cpp:340: undefined reference to `ei_malloc(unsigned int)'
/usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/bin/ld: edge-impulse-sdk/dsp/kissfft/kiss_fft.o: in function `kiss_fft_stride':
/home/sergi/Escriptori/sergisp97-project-1/sergisp97-project/edge-impulse-sdk/dsp/kissfft/kiss_fft.cpp:381: undefined reference to `ei_malloc(unsigned int)'
/usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/bin/ld: /home/sergi/Escriptori/sergisp97-project-1/sergisp97-project/edge-impulse-sdk/dsp/kissfft/kiss_fft.cpp:384: undefined reference to `ei_free(void*)'
/usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/bin/ld: edge-impulse-sdk/dsp/kissfft/kiss_fftr.o: in function `kiss_fftr_alloc':
/home/sergi/Escriptori/sergisp97-project-1/sergisp97-project/edge-impulse-sdk/dsp/kissfft/kiss_fftr.cpp:28: undefined reference to `ei_printf(char const*, ...)'
/usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/bin/ld: /home/sergi/Escriptori/sergisp97-project-1/sergisp97-project/edge-impulse-sdk/dsp/kissfft/kiss_fftr.cpp:37: undefined reference to `ei_malloc(unsigned int)'
/usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/bin/ld: edge-impulse-sdk/dsp/kissfft/kiss_fftr.o: in function `kiss_fftr':
/home/sergi/Escriptori/sergisp97-project-1/sergisp97-project/edge-impulse-sdk/dsp/kissfft/kiss_fftr.cpp:79: undefined reference to `ei_printf(char const*, ...)'
/usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/bin/ld: edge-impulse-sdk/dsp/kissfft/kiss_fftr.o: in function `kiss_fftri':
/home/sergi/Escriptori/sergisp97-project-1/sergisp97-project/edge-impulse-sdk/dsp/kissfft/kiss_fftr.cpp:133: undefined reference to `ei_printf(char const*, ...)'
/usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/bin/ld: edge-impulse-sdk/dsp/dct/fast-dct-fft.o: in function `ei::dct::transform(float*, unsigned int)':
/home/sergi/Escriptori/sergisp97-project-1/sergisp97-project/edge-impulse-sdk/dsp/dct/fast-dct-fft.cpp:37: undefined reference to `ei_calloc(unsigned int, unsigned int)'
/usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/bin/ld: /home/sergi/Escriptori/sergisp97-project-1/sergisp97-project/edge-impulse-sdk/dsp/dct/fast-dct-fft.cpp:42: undefined reference to `ei_calloc(unsigned int, unsigned int)'
/usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/bin/ld: /home/sergi/Escriptori/sergisp97-project-1/sergisp97-project/edge-impulse-sdk/dsp/dct/fast-dct-fft.cpp:44: undefined reference to `ei_free(void*)'
/usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/bin/ld: /home/sergi/Escriptori/sergisp97-project-1/sergisp97-project/edge-impulse-sdk/dsp/dct/fast-dct-fft.cpp:77: undefined reference to `ei_free(void*)'
/usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/bin/ld: /home/sergi/Escriptori/sergisp97-project-1/sergisp97-project/edge-impulse-sdk/dsp/dct/fast-dct-fft.cpp:78: undefined reference to `ei_free(void*)'
/usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/bin/ld: edge-impulse-sdk/tensorflow/lite/micro/kernels/circular_buffer.o: in function `tflite::Register_CIRCULAR_BUFFER()':
/home/sergi/Escriptori/sergisp97-project-1/sergisp97-project/edge-impulse-sdk/tensorflow/lite/micro/kernels/circular_buffer.cc:113: undefined reference to `__sync_synchronize'
/usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/bin/ld: edge-impulse-sdk/tensorflow/lite/micro/kernels/detection_postprocess.o: in function `tflite::Register_DETECTION_POSTPROCESS()':
/home/sergi/Escriptori/sergisp97-project-1/sergisp97-project/edge-impulse-sdk/tensorflow/lite/micro/kernels/detection_postprocess.cc:803: undefined reference to `__sync_synchronize'
/usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/bin/ld: edge-impulse-sdk/tensorflow/lite/micro/kernels/rfft2d.o: in function `tflite::ops::micro::rfft2d::Eval(TfLiteContext*, TfLiteNode*)':
/home/sergi/Escriptori/sergisp97-project-1/sergisp97-project/edge-impulse-sdk/tensorflow/lite/micro/kernels/rfft2d.cc:55: undefined reference to `ei_free(void*)'
/usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/bin/ld: edge-impulse-sdk/tensorflow/lite/micro/kernels/rfft2d.o: in function `software_rfft':
/home/sergi/Escriptori/sergisp97-project-1/sergisp97-project/edge-impulse-sdk/tensorflow/lite/micro/kernels/rfft2d.cc:68: undefined reference to `ei_free(void*)'
/usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/bin/ld: edge-impulse-sdk/tensorflow/lite/micro/test_helpers.o: in function `tflite::testing::(anonymous namespace)::BuilderInstance()':
/home/sergi/Escriptori/sergisp97-project-1/sergisp97-project/edge-impulse-sdk/tensorflow/lite/micro/test_helpers.cc:81: undefined reference to `__sync_synchronize'
/usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/bin/ld: /home/sergi/Escriptori/sergisp97-project-1/sergisp97-project/edge-impulse-sdk/tensorflow/lite/micro/test_helpers.cc:62: undefined reference to `__sync_synchronize'
/usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/bin/ld: edge-impulse-sdk/tensorflow/lite/micro/test_helpers.o: in function `tflite::testing::GetModelWith256x256Tensor()':
/home/sergi/Escriptori/sergisp97-project-1/sergisp97-project/edge-impulse-sdk/tensorflow/lite/micro/test_helpers.cc:1690: undefined reference to `__sync_synchronize'
/usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/bin/ld: /usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/lib/libc.a(lib_a-abort.o): in function `abort':
/build/newlib-pB30de/newlib-3.3.0/build/arm-none-eabi/newlib/libc/stdlib/../../../../../newlib/libc/stdlib/abort.c:59: undefined reference to `_exit'
/usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/bin/ld: /usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/lib/libc.a(lib_a-exit.o): in function `exit':
/build/newlib-pB30de/newlib-3.3.0/build/arm-none-eabi/newlib/libc/stdlib/../../../../../newlib/libc/stdlib/exit.c:64: undefined reference to `_exit'
/usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/bin/ld: /usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/lib/libc.a(lib_a-sbrkr.o): in function `_sbrk_r':
/build/newlib-pB30de/newlib-3.3.0/build/arm-none-eabi/newlib/libc/reent/../../../../../newlib/libc/reent/sbrkr.c:51: undefined reference to `_sbrk'
/usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/bin/ld: /usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/lib/libc.a(lib_a-signalr.o): in function `_kill_r':
/build/newlib-pB30de/newlib-3.3.0/build/arm-none-eabi/newlib/libc/reent/../../../../../newlib/libc/reent/signalr.c:53: undefined reference to `_kill'
/usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/bin/ld: /usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/lib/libc.a(lib_a-signalr.o): in function `_getpid_r':
/build/newlib-pB30de/newlib-3.3.0/build/arm-none-eabi/newlib/libc/reent/../../../../../newlib/libc/reent/signalr.c:83: undefined reference to `_getpid'
/usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/bin/ld: /usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/lib/libc.a(lib_a-closer.o): in function `_close_r':
/build/newlib-pB30de/newlib-3.3.0/build/arm-none-eabi/newlib/libc/reent/../../../../../newlib/libc/reent/closer.c:47: undefined reference to `_close'
/usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/bin/ld: /usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/lib/libc.a(lib_a-writer.o): in function `_write_r':
/build/newlib-pB30de/newlib-3.3.0/build/arm-none-eabi/newlib/libc/reent/../../../../../newlib/libc/reent/writer.c:49: undefined reference to `_write'
/usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/bin/ld: /usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/lib/libc.a(lib_a-fstatr.o): in function `_fstat_r':
/build/newlib-pB30de/newlib-3.3.0/build/arm-none-eabi/newlib/libc/reent/../../../../../newlib/libc/reent/fstatr.c:55: undefined reference to `_fstat'
/usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/bin/ld: /usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/lib/libc.a(lib_a-isattyr.o): in function `_isatty_r':
/build/newlib-pB30de/newlib-3.3.0/build/arm-none-eabi/newlib/libc/reent/../../../../../newlib/libc/reent/isattyr.c:52: undefined reference to `_isatty'
/usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/bin/ld: /usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/lib/libc.a(lib_a-lseekr.o): in function `_lseek_r':
/build/newlib-pB30de/newlib-3.3.0/build/arm-none-eabi/newlib/libc/reent/../../../../../newlib/libc/reent/lseekr.c:49: undefined reference to `_lseek'
/usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/bin/ld: /usr/lib/gcc/arm-none-eabi/10.3.1/../../../arm-none-eabi/lib/libc.a(lib_a-readr.o): in function `_read_r':
/build/newlib-pB30de/newlib-3.3.0/build/arm-none-eabi/newlib/libc/reent/../../../../../newlib/libc/reent/readr.c:49: undefined reference to `_read'
collect2: error: ld returned 1 exit status
make: *** [Makefile:125: app] Error 1

Does anyone know why this error occurs or how can I solve it?
So I can loaded to the binary file to the portenta h7 device.

Hi @sergisp97

Did you pull our latest SDK, I can see some references to CMSIS that we just released at the start of last week:

https://docs.edgeimpulse.com/docs/run-inference/arm-keil-cmsis

Best

Eoin