Jump to content

CShark

Members
  • Posts

    6
  • Joined

  • Last visited

Posts posted by CShark

  1. I started with your file, but to track down the make errors, I reversed it bit by bit until I got the bitbucket one. Now I applied all changes forward and have a working makefile with the version you provided. So first a list of all changes and afterwards an explanation.

    Things to change in ugfx:

    /boards/base/STM32F746-Discovery/board.mk

    GFXINC  +=	$(GFXLIB)/boards/base/STM32F746-Discovery
    GFXSRC += $(GFXLIB)/boards/base/STM32F746-Discovery/stm32f746g_discovery_sdram.c \
    $(GFXLIB)/boards/base/STM32F746-Discovery/stm32f7_i2c.c

    ifeq ($(OPT_OS),raw32)
    GFXDEFS += STM32F746xx
    GFXSRC += $(STMHAL)/Src/stm32f7xx_hal.c \
    $(STMHAL)/Src/stm32f7xx_hal_cortex.c \
    $(STMHAL)/Src/stm32f7xx_hal_rcc.c \
    $(STMHAL)/Src/stm32f7xx_hal_rcc_ex.h \
    $(STMHAL)/Src/stm32f7xx_hal_gpio.c \
    $(STMHAL)/Src/stm32f7xx_hal_pwr.c \
    $(STMHAL)/Src/stm32f7xx_hal_pwr_ex.c
    STARTUP = $(GFXLIB)/boards/base/STM32F746-Discovery/stm32f746g_raw32_startup.s
    GFXSRC += $(GFXLIB)/boards/base/STM32F746-Discovery/stm32f746g_raw32_ugfx.c \
    $(GFXLIB)/boards/base/STM32F746-Discovery/stm32f746g_raw32_system.c \
    $(GFXLIB)/boards/base/STM32F746-Discovery/stm32f746g_raw32_interrupts.c
    GFXDEFS += GFX_OS_PRE_INIT_FUNCTION=Raw32OSInit GFX_OS_INIT_NO_WARNING=TRUE
    GFXINC += $(CMSIS)/Device/ST/STM32F7xx/Include \
    $(CMSIS)/Include \
    $(STMHAL)/Inc
    LDSCRIPT = $(GFXLIB)/boards/base/STM32F746-Discovery/stm32f746nghx_flash.ld
    endif

    include $(GFXLIB)/tools/gmake_scripts/cpu_stm32m7.mk
    include $(GFXLIB)/drivers/gdisp/STM32LTDC/driver.mk
    include $(GFXLIB)/drivers/ginput/touch/FT5336/driver.mk

    And finally, the makefile:

    ################################################################################
    # Generic Makefile for STM32 based applications using StdPeriph/STM32Cube. #
    # #
    # Copyright (C) 2015 by Joel Bodenmann #
    # #
    # Feel free to use this makefile without any warranty on your own risk. #
    ################################################################################

    # This is the name of the binaries that will be generated
    TARGET = project

    # Some paths
    OPT_OS = raw32
    CMSIS = CMSIS
    STMHAL = STM32F7xx_HAL_Driver
    GFXBOARD = STM32F746-Discovery

    # Include uGFX stuff, don't forget about $(GFXSRC) and $(GFXINC) further below
    GFXLIB = ../ugfx-ca0be9403f25
    include $(GFXLIB)/gfx.mk

    # Here we add all *.c files that we want to compile
    CSRCS = \
    $(GFXSRC) \
    $(STMHAL)/Src/stm32f7xx_hal_flash.c \
    $(STMHAL)/Src/stm32f7xx_hal_flash_ex.c \
    $(STMHAL)/Src/stm32f7xx_hal_dma.c \
    $(STMHAL)/Src/stm32f7xx_hal_i2c.c \
    $(STMHAL)/Src/stm32f7xx_hal_ltdc.c \
    main.c \
    _sbrk.c

    # Here we add all *.cpp files that we want to compile
    CPPSRCS =

    # Here we add all *.s files that we want to compile (Don't include startup file)
    ASSRCS =

    # Here we add the paths to all include directories
    INCS = \
    $(GFXINC) \
    .

    # here we add the paths to all custom libraries
    LIBDIRS =

    # here we add libraries
    LIBS = $(GFXLIBS)

    # StartUp file
    #STARTUP = startup_stm32f746xx.s

    # Linker script
    #LDSCRIPT = stm32f746nghx_flash.ld

    # The controller type
    CONTROLLER = STM32F746xx

    # MCU flags
    MCUFLAGS = -mthumb -mcpu=cortex-m7

    # Should a map file be generated? (yes / no)
    GENERATE_MAP = no

    # The following variables hold binaries and settings
    ARCH = arm-none-eabi
    AS = $(ARCH)-gcc
    LD = $(ARCH)-gcc
    CC = $(ARCH)-gcc
    CPPC = $(ARCH)-g++
    SIZE = $(ARCH)-size
    OBJCOPY = $(ARCH)-objcopy
    ASFLAGS = -ggdb -Wall
    CFLAGS = -ggdb -Wall -std=c99
    CPPFLAGS = -ggdb -Wall
    LDFLAGS += -lnosys -fno-exceptions -fdata-sections

    ################################################################################
    # Don't change anything below this line #
    ################################################################################

    # Some directory and file magic
    BUILDDIR = build
    OBJDIR = $(BUILDDIR)/obj
    MAPFILE = $(BUILDDIR)/$(TARGET).map
    DEPDIR = $(BUILDDIR)/dep
    SRCFLAGS += -MMD -MP -MF $(DEPDIR)/$(@F:.o=.d)

    # Add the startup file
    ASSRCS += $(STARTUP)

    # Generate the object names
    OBJS = $(addprefix $(OBJDIR)/,$(addsuffix .o,$(basename $(CSRCS:%.c=%.o))))
    OBJS += $(addprefix $(OBJDIR)/,$(addsuffix .o,$(basename $(ASSRCS:%.s=%.o))))
    OBJS += $(addprefix $(OBJDIR)/,$(addsuffix .o,$(basename $(CPPSRCS:%.cpp=%.o))))

    # Automate the inclusion paths
    DEFS += $(GFXDEFS)
    CFLAGS += $(INCS:%=-I%) $(MCUFLAGS) -D$(CONTROLLER) $(DEFS:%=-D%) -DUSE_STDPERIPH_DRIVER $(SRCFLAGS)
    CPPFLAGS += $(INCS:%=-I%)
    LDFLAGS += $(LIBDIRS:%=-L%) $(INCS:%=-I%) $(LIBS) $(MCUFLAGS) -T$(LDSCRIPT)

    # Some user settings magic
    ifeq ($(GENERATE_MAP), yes)
    LDFLAGS += -Wl,-Map=$(MAPFILE),--cref
    endif

    # This is the default target if the user does just calls 'make'
    all: build size

    # Build all the files
    build: builddirs $(BUILDDIR)/$(TARGET).elf $(BUILDDIR)/$(TARGET).bin $(BUILDDIR)/$(TARGET).hex

    # Create the required directories (if not already existing)
    builddirs:
    @mkdir -p $(BUILDDIR)
    @mkdir -p $(OBJDIR)
    @mkdir -p $(DEPDIR)

    # Create the *.bin
    $(BUILDDIR)/%.bin: $(BUILDDIR)/$(TARGET).elf
    @$(OBJCOPY) -O binary $< $@

    # Create the *.hex
    $(BUILDDIR)/%.hex: $(BUILDDIR)/$(TARGET).elf
    @$(OBJCOPY) -O ihex $< $@

    # Link everything together to a *.elf file
    $(BUILDDIR)/$(TARGET).elf: $(OBJS)
    @echo Linking $@
    @$(LD) $(LDFLAGS) -o $(BUILDDIR)/$(TARGET).elf $(OBJS)

    # Compile assembly files
    $(OBJDIR)/%.o: %.s
    @mkdir -p $(dir $@)
    @echo Compiling $<
    @$(AS) $(ASFLAGS) -c -o $@ $<

    # Compile c files
    $(OBJDIR)/%.o: %.c
    @mkdir -p $(dir $@)
    @echo Compiling $<
    @$(CC) $(CFLAGS) -c -o $@ $<

    # Compile cpp files
    $(OBJDIR)/%.o: %.cpp
    @mkdir -p $(dir $@)
    @echo Compiling $<
    @$(CPPC) $(CPPFLAGS) -c -o $@ $<

    # Print size information
    size: $(BUILDDIR)/$(TARGET).elf
    @echo
    @echo
    $(SIZE) $^
    @echo $(FOO)

    -include $(shell mkdir -p $(DEPDIR) 2>/dev/null) $(wildcard $(DEPDIR)/*)

    # Clean up
    clean:
    @rm -fR $(BUILDDIR)
    @echo Done

    # Clean must be a phony target so make knows this never exists as a file
    .PHONY: clean

    Changes to do to your sourcecode:

    Include the _sbrk.c file as given some posts above (not required to work though, just fix the source list accordingly)

    In main.c, remove the _init() function.

    That should be everything... except I forgot something which you should find out very quick :D

    Explanation of the changes:

    [cpu_stm32m7.mk]:

    I changed -mfpu=fpv4-sp-d16 to -mfpu=fpv5-sp-d16, as suggested some posts before.

    [board.mk]

    Here I included the cpu specific makefile and specified the startup assembly file as STARTUP, not GFXSRC

    [Makefile]

    First, I adjusted some missing/misspelled variables. OPT_OS was missing, HAL changed to STMHAL, GFXBOARD was missing, CSRCS and INCS had some double items, which were also defined in board.mk and STARTUP and LDSCRIPT are defined in board.mk. Further down I added the GFXDEFS to DEFS and applied all DEFS as defines to CFLAGS.

    I changed clean to the bitbucket version, because the command resulted in some errors and didn't do anything on my laptop. And as a last point I added the dependency guard.

  2. Regarding Eclipse:

    I needed the gnu arm eclipse plugin[1], arm build tools for windows [2] and cygwin. [1] provides the compiler and linker for the stm32, [2] provides a more recent gnu make and cygwin provided me with a working mkdir (package has to be installed).

    To get it finally up and running, I imported the makefile project into eclipse and did the following adjustments:

    Open the Project Properties and make sure/change:

    1. C/C++ Build: Make sure "Generate makefiles automatically" is turned off

    2. C/C++ Build->Environment: Make sure "PATH" contains cygwin's bin path (probably doesn't) and the paths to build tools and the compiler bin path (should already be)

    For a working IDE with code completion and stuff:

    C/C++ General->Paths and Symbols: include everything that you need, in my case I needed the path to the root of ugfx and some include dirs in the project dir.

    Also make sure to never use drive letters in makefiles. You'll get some weird errors with targets failing/missing and other stuff. Always use relative paths.

    Some demos or functions complain about a missing _sbrk. Create a file "_sbrk.c" containing the following code to fix the error:

    #include "gfx.h"

    char* _sbrk(int incr) {
    return (char *)gfxAlloc(incr);
    }

    Oh, and \ actually has another meaning in a makefile, don't use it in paths. \ joins multiple lines into one. Cygwins mkdir works fine with the paths and cmd arguments provided by ugfx.

    [1]: http://gnuarmeclipse.github.io/

    [2]: http://gnuarmeclipse.github.io/windows-build-tools/

  3. While working out where the error was, I did a complete rollback to the old makefile. Good news though, I got it to compile even using eclipse. I will try to implement the cubemx makefile step by step today/tomorrow.

  4. I've tried to get ugfx with the board working to no avail. Now I am as far as getting to the linker without errors, but now there are some functions missing. It looks like the modules are not properly included... but I have no idea why or how to fix that. Any Ideas?

    Building target: dmxprobe
    Invoking: Cross ARM C++ Linker
    arm-none-eabi-g++ -mcpu=cortex-m7 -mthumb -O2 -g -Xlinker --gc-sections -Wl,-Map,"dmxprobe.map" -o "dmxprobe" ./STM32F7xx_HAL_Driver/Src/stm32f7xx_hal.o ./STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_adc.o ./STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_adc_ex.o ./STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_can.o ./STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_cec.o ./STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_cortex.o ./STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_crc.o ./STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_crc_ex.o ./STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_cryp.o ./STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_cryp_ex.o ./STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_dac.o ./STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_dac_ex.o ./STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_dcmi.o ./STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_dcmi_ex.o ./STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_dma.o ./STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_dma2d.o ./STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_dma_ex.o ./STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_eth.o ./STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_flash.o ./STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_flash_ex.o ./STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_gpio.o ./STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_hash.o ./STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_hash_ex.o ./STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_hcd.o ./STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c.o ./STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.o ./STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2s.o ./STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_irda.o ./STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_iwdg.o ./STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_lptim.o ./STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_ltdc.o ./STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_msp_template.o ./STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_nand.o ./STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_nor.o ./STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_pcd.o ./STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_pcd_ex.o ./STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_pwr.o ./STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_pwr_ex.o ./STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_qspi.o ./STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_rcc.o ./STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_rcc_ex.o ./STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_rng.o ./STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_rtc.o ./STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_rtc_ex.o ./STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sai.o ./STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sai_ex.o ./STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.o ./STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sdram.o ./STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_smartcard.o ./STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_smartcard_ex.o ./STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_spdifrx.o ./STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_spi.o ./STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sram.o ./STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_tim.o ./STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_tim_ex.o ./STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_uart.o ./STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_usart.o ./STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_wwdg.o ./STM32F7xx_HAL_Driver/Src/stm32f7xx_ll_fmc.o ./STM32F7xx_HAL_Driver/Src/stm32f7xx_ll_sdmmc.o ./STM32F7xx_HAL_Driver/Src/stm32f7xx_ll_usb.o ./CMSIS/Device/ST/STM32F7xx/Source/Templates/system_stm32f7xx.o ./CMSIS/DSP_Lib/Source/TransformFunctions/arm_bitreversal.o ./CMSIS/DSP_Lib/Source/TransformFunctions/arm_cfft_f32.o ./CMSIS/DSP_Lib/Source/TransformFunctions/arm_cfft_q15.o ./CMSIS/DSP_Lib/Source/TransformFunctions/arm_cfft_q31.o ./CMSIS/DSP_Lib/Source/TransformFunctions/arm_cfft_radix2_f32.o ./CMSIS/DSP_Lib/Source/TransformFunctions/arm_cfft_radix2_init_f32.o ./CMSIS/DSP_Lib/Source/TransformFunctions/arm_cfft_radix2_init_q15.o ./CMSIS/DSP_Lib/Source/TransformFunctions/arm_cfft_radix2_init_q31.o ./CMSIS/DSP_Lib/Source/TransformFunctions/arm_cfft_radix2_q15.o ./CMSIS/DSP_Lib/Source/TransformFunctions/arm_cfft_radix2_q31.o ./CMSIS/DSP_Lib/Source/TransformFunctions/arm_cfft_radix4_f32.o ./CMSIS/DSP_Lib/Source/TransformFunctions/arm_cfft_radix4_init_f32.o ./CMSIS/DSP_Lib/Source/TransformFunctions/arm_cfft_radix4_init_q15.o ./CMSIS/DSP_Lib/Source/TransformFunctions/arm_cfft_radix4_init_q31.o ./CMSIS/DSP_Lib/Source/TransformFunctions/arm_cfft_radix4_q15.o ./CMSIS/DSP_Lib/Source/TransformFunctions/arm_cfft_radix4_q31.o ./CMSIS/DSP_Lib/Source/TransformFunctions/arm_cfft_radix8_f32.o ./CMSIS/DSP_Lib/Source/TransformFunctions/arm_dct4_f32.o ./CMSIS/DSP_Lib/Source/TransformFunctions/arm_dct4_init_f32.o ./CMSIS/DSP_Lib/Source/TransformFunctions/arm_dct4_init_q15.o ./CMSIS/DSP_Lib/Source/TransformFunctions/arm_dct4_init_q31.o ./CMSIS/DSP_Lib/Source/TransformFunctions/arm_dct4_q15.o ./CMSIS/DSP_Lib/Source/TransformFunctions/arm_dct4_q31.o ./CMSIS/DSP_Lib/Source/TransformFunctions/arm_rfft_f32.o ./CMSIS/DSP_Lib/Source/TransformFunctions/arm_rfft_fast_f32.o ./CMSIS/DSP_Lib/Source/TransformFunctions/arm_rfft_fast_init_f32.o ./CMSIS/DSP_Lib/Source/TransformFunctions/arm_rfft_init_f32.o ./CMSIS/DSP_Lib/Source/TransformFunctions/arm_rfft_init_q15.o ./CMSIS/DSP_Lib/Source/TransformFunctions/arm_rfft_init_q31.o ./CMSIS/DSP_Lib/Source/TransformFunctions/arm_rfft_q15.o ./CMSIS/DSP_Lib/Source/TransformFunctions/arm_rfft_q31.o ./CMSIS/DSP_Lib/Source/SupportFunctions/arm_copy_f32.o ./CMSIS/DSP_Lib/Source/SupportFunctions/arm_copy_q15.o ./CMSIS/DSP_Lib/Source/SupportFunctions/arm_copy_q31.o ./CMSIS/DSP_Lib/Source/SupportFunctions/arm_copy_q7.o ./CMSIS/DSP_Lib/Source/SupportFunctions/arm_fill_f32.o ./CMSIS/DSP_Lib/Source/SupportFunctions/arm_fill_q15.o ./CMSIS/DSP_Lib/Source/SupportFunctions/arm_fill_q31.o ./CMSIS/DSP_Lib/Source/SupportFunctions/arm_fill_q7.o ./CMSIS/DSP_Lib/Source/SupportFunctions/arm_float_to_q15.o ./CMSIS/DSP_Lib/Source/SupportFunctions/arm_float_to_q31.o ./CMSIS/DSP_Lib/Source/SupportFunctions/arm_float_to_q7.o ./CMSIS/DSP_Lib/Source/SupportFunctions/arm_q15_to_float.o ./CMSIS/DSP_Lib/Source/SupportFunctions/arm_q15_to_q31.o ./CMSIS/DSP_Lib/Source/SupportFunctions/arm_q15_to_q7.o ./CMSIS/DSP_Lib/Source/SupportFunctions/arm_q31_to_float.o ./CMSIS/DSP_Lib/Source/SupportFunctions/arm_q31_to_q15.o ./CMSIS/DSP_Lib/Source/SupportFunctions/arm_q31_to_q7.o ./CMSIS/DSP_Lib/Source/SupportFunctions/arm_q7_to_float.o ./CMSIS/DSP_Lib/Source/SupportFunctions/arm_q7_to_q15.o ./CMSIS/DSP_Lib/Source/SupportFunctions/arm_q7_to_q31.o ./CMSIS/DSP_Lib/Source/StatisticsFunctions/arm_max_f32.o ./CMSIS/DSP_Lib/Source/StatisticsFunctions/arm_max_q15.o ./CMSIS/DSP_Lib/Source/StatisticsFunctions/arm_max_q31.o ./CMSIS/DSP_Lib/Source/StatisticsFunctions/arm_max_q7.o ./CMSIS/DSP_Lib/Source/StatisticsFunctions/arm_mean_f32.o ./CMSIS/DSP_Lib/Source/StatisticsFunctions/arm_mean_q15.o ./CMSIS/DSP_Lib/Source/StatisticsFunctions/arm_mean_q31.o ./CMSIS/DSP_Lib/Source/StatisticsFunctions/arm_mean_q7.o ./CMSIS/DSP_Lib/Source/StatisticsFunctions/arm_min_f32.o ./CMSIS/DSP_Lib/Source/StatisticsFunctions/arm_min_q15.o ./CMSIS/DSP_Lib/Source/StatisticsFunctions/arm_min_q31.o ./CMSIS/DSP_Lib/Source/StatisticsFunctions/arm_min_q7.o ./CMSIS/DSP_Lib/Source/StatisticsFunctions/arm_power_f32.o ./CMSIS/DSP_Lib/Source/StatisticsFunctions/arm_power_q15.o ./CMSIS/DSP_Lib/Source/StatisticsFunctions/arm_power_q31.o ./CMSIS/DSP_Lib/Source/StatisticsFunctions/arm_power_q7.o ./CMSIS/DSP_Lib/Source/StatisticsFunctions/arm_rms_f32.o ./CMSIS/DSP_Lib/Source/StatisticsFunctions/arm_rms_q15.o ./CMSIS/DSP_Lib/Source/StatisticsFunctions/arm_rms_q31.o ./CMSIS/DSP_Lib/Source/StatisticsFunctions/arm_std_f32.o ./CMSIS/DSP_Lib/Source/StatisticsFunctions/arm_std_q15.o ./CMSIS/DSP_Lib/Source/StatisticsFunctions/arm_std_q31.o ./CMSIS/DSP_Lib/Source/StatisticsFunctions/arm_var_f32.o ./CMSIS/DSP_Lib/Source/StatisticsFunctions/arm_var_q15.o ./CMSIS/DSP_Lib/Source/StatisticsFunctions/arm_var_q31.o ./CMSIS/DSP_Lib/Source/MatrixFunctions/arm_mat_add_f32.o ./CMSIS/DSP_Lib/Source/MatrixFunctions/arm_mat_add_q15.o ./CMSIS/DSP_Lib/Source/MatrixFunctions/arm_mat_add_q31.o ./CMSIS/DSP_Lib/Source/MatrixFunctions/arm_mat_cmplx_mult_f32.o ./CMSIS/DSP_Lib/Source/MatrixFunctions/arm_mat_cmplx_mult_q15.o ./CMSIS/DSP_Lib/Source/MatrixFunctions/arm_mat_cmplx_mult_q31.o ./CMSIS/DSP_Lib/Source/MatrixFunctions/arm_mat_init_f32.o ./CMSIS/DSP_Lib/Source/MatrixFunctions/arm_mat_init_q15.o ./CMSIS/DSP_Lib/Source/MatrixFunctions/arm_mat_init_q31.o ./CMSIS/DSP_Lib/Source/MatrixFunctions/arm_mat_inverse_f32.o ./CMSIS/DSP_Lib/Source/MatrixFunctions/arm_mat_inverse_f64.o ./CMSIS/DSP_Lib/Source/MatrixFunctions/arm_mat_mult_f32.o ./CMSIS/DSP_Lib/Source/MatrixFunctions/arm_mat_mult_fast_q15.o ./CMSIS/DSP_Lib/Source/MatrixFunctions/arm_mat_mult_fast_q31.o ./CMSIS/DSP_Lib/Source/MatrixFunctions/arm_mat_mult_q15.o ./CMSIS/DSP_Lib/Source/MatrixFunctions/arm_mat_mult_q31.o ./CMSIS/DSP_Lib/Source/MatrixFunctions/arm_mat_scale_f32.o ./CMSIS/DSP_Lib/Source/MatrixFunctions/arm_mat_scale_q15.o ./CMSIS/DSP_Lib/Source/MatrixFunctions/arm_mat_scale_q31.o ./CMSIS/DSP_Lib/Source/MatrixFunctions/arm_mat_sub_f32.o ./CMSIS/DSP_Lib/Source/MatrixFunctions/arm_mat_sub_q15.o ./CMSIS/DSP_Lib/Source/MatrixFunctions/arm_mat_sub_q31.o ./CMSIS/DSP_Lib/Source/MatrixFunctions/arm_mat_trans_f32.o ./CMSIS/DSP_Lib/Source/MatrixFunctions/arm_mat_trans_q15.o ./CMSIS/DSP_Lib/Source/MatrixFunctions/arm_mat_trans_q31.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_biquad_cascade_df1_32x64_init_q31.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_biquad_cascade_df1_32x64_q31.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_biquad_cascade_df1_f32.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_biquad_cascade_df1_fast_q15.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_biquad_cascade_df1_fast_q31.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_biquad_cascade_df1_init_f32.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_biquad_cascade_df1_init_q15.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_biquad_cascade_df1_init_q31.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_biquad_cascade_df1_q15.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_biquad_cascade_df1_q31.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_biquad_cascade_df2T_f32.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_biquad_cascade_df2T_f64.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_biquad_cascade_df2T_init_f32.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_biquad_cascade_df2T_init_f64.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_biquad_cascade_stereo_df2T_f32.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_biquad_cascade_stereo_df2T_init_f32.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_conv_f32.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_conv_fast_opt_q15.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_conv_fast_q15.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_conv_fast_q31.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_conv_opt_q15.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_conv_opt_q7.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_conv_partial_f32.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_conv_partial_fast_opt_q15.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_conv_partial_fast_q15.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_conv_partial_fast_q31.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_conv_partial_opt_q15.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_conv_partial_opt_q7.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_conv_partial_q15.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_conv_partial_q31.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_conv_partial_q7.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_conv_q15.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_conv_q31.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_conv_q7.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_correlate_f32.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_correlate_fast_opt_q15.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_correlate_fast_q15.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_correlate_fast_q31.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_correlate_opt_q15.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_correlate_opt_q7.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_correlate_q15.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_correlate_q31.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_correlate_q7.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_fir_decimate_f32.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_fir_decimate_fast_q15.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_fir_decimate_fast_q31.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_fir_decimate_init_f32.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_fir_decimate_init_q15.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_fir_decimate_init_q31.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_fir_decimate_q15.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_fir_decimate_q31.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_fir_f32.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_fir_fast_q15.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_fir_fast_q31.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_fir_init_f32.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_fir_init_q15.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_fir_init_q31.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_fir_init_q7.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_fir_interpolate_f32.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_fir_interpolate_init_f32.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_fir_interpolate_init_q15.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_fir_interpolate_init_q31.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_fir_interpolate_q15.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_fir_interpolate_q31.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_fir_lattice_f32.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_fir_lattice_init_f32.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_fir_lattice_init_q15.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_fir_lattice_init_q31.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_fir_lattice_q15.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_fir_lattice_q31.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_fir_q15.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_fir_q31.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_fir_q7.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_fir_sparse_f32.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_fir_sparse_init_f32.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_fir_sparse_init_q15.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_fir_sparse_init_q31.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_fir_sparse_init_q7.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_fir_sparse_q15.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_fir_sparse_q31.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_fir_sparse_q7.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_iir_lattice_f32.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_iir_lattice_init_f32.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_iir_lattice_init_q15.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_iir_lattice_init_q31.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_iir_lattice_q15.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_iir_lattice_q31.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_lms_f32.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_lms_init_f32.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_lms_init_q15.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_lms_init_q31.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_lms_norm_f32.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_lms_norm_init_f32.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_lms_norm_init_q15.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_lms_norm_init_q31.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_lms_norm_q15.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_lms_norm_q31.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_lms_q15.o ./CMSIS/DSP_Lib/Source/FilteringFunctions/arm_lms_q31.o ./CMSIS/DSP_Lib/Source/FastMathFunctions/arm_cos_f32.o ./CMSIS/DSP_Lib/Source/FastMathFunctions/arm_cos_q15.o ./CMSIS/DSP_Lib/Source/FastMathFunctions/arm_cos_q31.o ./CMSIS/DSP_Lib/Source/FastMathFunctions/arm_sin_f32.o ./CMSIS/DSP_Lib/Source/FastMathFunctions/arm_sin_q15.o ./CMSIS/DSP_Lib/Source/FastMathFunctions/arm_sin_q31.o ./CMSIS/DSP_Lib/Source/FastMathFunctions/arm_sqrt_q15.o ./CMSIS/DSP_Lib/Source/FastMathFunctions/arm_sqrt_q31.o ./CMSIS/DSP_Lib/Source/ControllerFunctions/arm_pid_init_f32.o ./CMSIS/DSP_Lib/Source/ControllerFunctions/arm_pid_init_q15.o ./CMSIS/DSP_Lib/Source/ControllerFunctions/arm_pid_init_q31.o ./CMSIS/DSP_Lib/Source/ControllerFunctions/arm_pid_reset_f32.o ./CMSIS/DSP_Lib/Source/ControllerFunctions/arm_pid_reset_q15.o ./CMSIS/DSP_Lib/Source/ControllerFunctions/arm_pid_reset_q31.o ./CMSIS/DSP_Lib/Source/ControllerFunctions/arm_sin_cos_f32.o ./CMSIS/DSP_Lib/Source/ControllerFunctions/arm_sin_cos_q31.o ./CMSIS/DSP_Lib/Source/ComplexMathFunctions/arm_cmplx_conj_f32.o ./CMSIS/DSP_Lib/Source/ComplexMathFunctions/arm_cmplx_conj_q15.o ./CMSIS/DSP_Lib/Source/ComplexMathFunctions/arm_cmplx_conj_q31.o ./CMSIS/DSP_Lib/Source/ComplexMathFunctions/arm_cmplx_dot_prod_f32.o ./CMSIS/DSP_Lib/Source/ComplexMathFunctions/arm_cmplx_dot_prod_q15.o ./CMSIS/DSP_Lib/Source/ComplexMathFunctions/arm_cmplx_dot_prod_q31.o ./CMSIS/DSP_Lib/Source/ComplexMathFunctions/arm_cmplx_mag_f32.o ./CMSIS/DSP_Lib/Source/ComplexMathFunctions/arm_cmplx_mag_q15.o ./CMSIS/DSP_Lib/Source/ComplexMathFunctions/arm_cmplx_mag_q31.o ./CMSIS/DSP_Lib/Source/ComplexMathFunctions/arm_cmplx_mag_squared_f32.o ./CMSIS/DSP_Lib/Source/ComplexMathFunctions/arm_cmplx_mag_squared_q15.o ./CMSIS/DSP_Lib/Source/ComplexMathFunctions/arm_cmplx_mag_squared_q31.o ./CMSIS/DSP_Lib/Source/ComplexMathFunctions/arm_cmplx_mult_cmplx_f32.o ./CMSIS/DSP_Lib/Source/ComplexMathFunctions/arm_cmplx_mult_cmplx_q15.o ./CMSIS/DSP_Lib/Source/ComplexMathFunctions/arm_cmplx_mult_cmplx_q31.o ./CMSIS/DSP_Lib/Source/ComplexMathFunctions/arm_cmplx_mult_real_f32.o ./CMSIS/DSP_Lib/Source/ComplexMathFunctions/arm_cmplx_mult_real_q15.o ./CMSIS/DSP_Lib/Source/ComplexMathFunctions/arm_cmplx_mult_real_q31.o ./CMSIS/DSP_Lib/Source/CommonTables/arm_common_tables.o ./CMSIS/DSP_Lib/Source/CommonTables/arm_const_structs.o ./CMSIS/DSP_Lib/Source/BasicMathFunctions/arm_abs_f32.o ./CMSIS/DSP_Lib/Source/BasicMathFunctions/arm_abs_q15.o ./CMSIS/DSP_Lib/Source/BasicMathFunctions/arm_abs_q31.o ./CMSIS/DSP_Lib/Source/BasicMathFunctions/arm_abs_q7.o ./CMSIS/DSP_Lib/Source/BasicMathFunctions/arm_add_f32.o ./CMSIS/DSP_Lib/Source/BasicMathFunctions/arm_add_q15.o ./CMSIS/DSP_Lib/Source/BasicMathFunctions/arm_add_q31.o ./CMSIS/DSP_Lib/Source/BasicMathFunctions/arm_add_q7.o ./CMSIS/DSP_Lib/Source/BasicMathFunctions/arm_dot_prod_f32.o ./CMSIS/DSP_Lib/Source/BasicMathFunctions/arm_dot_prod_q15.o ./CMSIS/DSP_Lib/Source/BasicMathFunctions/arm_dot_prod_q31.o ./CMSIS/DSP_Lib/Source/BasicMathFunctions/arm_dot_prod_q7.o ./CMSIS/DSP_Lib/Source/BasicMathFunctions/arm_mult_f32.o ./CMSIS/DSP_Lib/Source/BasicMathFunctions/arm_mult_q15.o ./CMSIS/DSP_Lib/Source/BasicMathFunctions/arm_mult_q31.o ./CMSIS/DSP_Lib/Source/BasicMathFunctions/arm_mult_q7.o ./CMSIS/DSP_Lib/Source/BasicMathFunctions/arm_negate_f32.o ./CMSIS/DSP_Lib/Source/BasicMathFunctions/arm_negate_q15.o ./CMSIS/DSP_Lib/Source/BasicMathFunctions/arm_negate_q31.o ./CMSIS/DSP_Lib/Source/BasicMathFunctions/arm_negate_q7.o ./CMSIS/DSP_Lib/Source/BasicMathFunctions/arm_offset_f32.o ./CMSIS/DSP_Lib/Source/BasicMathFunctions/arm_offset_q15.o ./CMSIS/DSP_Lib/Source/BasicMathFunctions/arm_offset_q31.o ./CMSIS/DSP_Lib/Source/BasicMathFunctions/arm_offset_q7.o ./CMSIS/DSP_Lib/Source/BasicMathFunctions/arm_scale_f32.o ./CMSIS/DSP_Lib/Source/BasicMathFunctions/arm_scale_q15.o ./CMSIS/DSP_Lib/Source/BasicMathFunctions/arm_scale_q31.o ./CMSIS/DSP_Lib/Source/BasicMathFunctions/arm_scale_q7.o ./CMSIS/DSP_Lib/Source/BasicMathFunctions/arm_shift_q15.o ./CMSIS/DSP_Lib/Source/BasicMathFunctions/arm_shift_q31.o ./CMSIS/DSP_Lib/Source/BasicMathFunctions/arm_shift_q7.o ./CMSIS/DSP_Lib/Source/BasicMathFunctions/arm_sub_f32.o ./CMSIS/DSP_Lib/Source/BasicMathFunctions/arm_sub_q15.o ./CMSIS/DSP_Lib/Source/BasicMathFunctions/arm_sub_q31.o ./CMSIS/DSP_Lib/Source/BasicMathFunctions/arm_sub_q7.o ./main.o
    ./main.o: In function `_heartbeat':
    E:\Projekte\eclipse\dmxprobe\Default/../main.c:27: undefined reference to `gfxSleepMilliseconds'
    ./main.o: In function `_updateColor':
    E:\Projekte\eclipse\dmxprobe\Default/../main.c:45: undefined reference to `gwinClear'
    ./main.o: In function `main':
    E:\Projekte\eclipse\dmxprobe\Default/../main.c:153: undefined reference to `gfxInit'
    E:\Projekte\eclipse\dmxprobe\Default/../main.c:156: undefined reference to `gdispOpenFont'
    E:\Projekte\eclipse\dmxprobe\Default/../main.c:156: undefined reference to `gwinSetDefaultFont'
    E:\Projekte\eclipse\dmxprobe\Default/../main.c:157: undefined reference to `gwinSetDefaultStyle'
    E:\Projekte\eclipse\dmxprobe\Default/../main.c:158: undefined reference to `gdispGClear'
    ./main.o: In function `_guiCreate':
    E:\Projekte\eclipse\dmxprobe\Default/../main.c:56: undefined reference to `gwinWidgetClearInit'
    E:\Projekte\eclipse\dmxprobe\Default/../main.c:65: undefined reference to `gwinGLabelCreate'
    E:\Projekte\eclipse\dmxprobe\Default/../main.c:73: undefined reference to `gwinGFrameCreate'
    E:\Projekte\eclipse\dmxprobe\Default/../main.c:82: undefined reference to `gwinGButtonCreate'
    E:\Projekte\eclipse\dmxprobe\Default/../main.c:91: undefined reference to `gwinGSliderCreate'
    E:\Projekte\eclipse\dmxprobe\Default/../main.c:92: undefined reference to `gwinSliderSetRange'
    E:\Projekte\eclipse\dmxprobe\Default/../main.c:93: undefined reference to `gwinSliderSetPosition'
    E:\Projekte\eclipse\dmxprobe\Default/../main.c:102: undefined reference to `gwinGButtonCreate'
    E:\Projekte\eclipse\dmxprobe\Default/../main.c:111: undefined reference to `gwinGSliderCreate'
    E:\Projekte\eclipse\dmxprobe\Default/../main.c:112: undefined reference to `gwinSliderSetRange'
    E:\Projekte\eclipse\dmxprobe\Default/../main.c:113: undefined reference to `gwinSliderSetPosition'
    E:\Projekte\eclipse\dmxprobe\Default/../main.c:122: undefined reference to `gwinGButtonCreate'
    E:\Projekte\eclipse\dmxprobe\Default/../main.c:131: undefined reference to `gwinGSliderCreate'
    E:\Projekte\eclipse\dmxprobe\Default/../main.c:132: undefined reference to `gwinSliderSetRange'
    E:\Projekte\eclipse\dmxprobe\Default/../main.c:133: undefined reference to `gwinSliderSetPosition'
    E:\Projekte\eclipse\dmxprobe\Default/../main.c:140: undefined reference to `gwinGWindowCreate'
    ./main.o: In function `main':
    E:\Projekte\eclipse\dmxprobe\Default/../main.c:164: undefined reference to `geventListenerInit'
    E:\Projekte\eclipse\dmxprobe\Default/../main.c:165: undefined reference to `gwinAttachListener'
    E:\Projekte\eclipse\dmxprobe\Default/../main.c:168: undefined reference to `gfxThreadCreate'
    E:\Projekte\eclipse\dmxprobe\Default/../main.c:172: undefined reference to `geventEventWait'
    E:\Projekte\eclipse\dmxprobe\Default/../main.c:189: undefined reference to `gwinSliderSetPosition'
    E:\Projekte\eclipse\dmxprobe\Default/../main.c:185: undefined reference to `gwinSliderSetPosition'
    E:\Projekte\eclipse\dmxprobe\Default/../main.c:187: undefined reference to `gwinSliderSetPosition'
    E:\Projekte\eclipse\dmxprobe\Default/../main.c:187: undefined reference to `GDISP'
    E:\Projekte\eclipse\dmxprobe\Default/../main.c:187: undefined reference to `WhiteWidgetStyle'
    collect2.exe: error: ld returned 1 exit status
    makefile:62: recipe for target 'dmxprobe' failed
    make: *** [dmxprobe] Error 1

×
×
  • Create New...