GCC HOME: C:\Program Files (x86)\GNU Tools ARM Embedded\5.4 2016q3\bin
compile:
[mkdir] Skipping C:\microcontrollers\IDEAS\CoIDE\workspace\2\2\Debug\bin because it already exists.
[mkdir] Skipping C:\microcontrollers\IDEAS\CoIDE\workspace\2\2\Debug\obj because it already exists.
[cc] Starting dependency analysis for 7 files.
[cc] Parsing ..\..\..\cmsis_boot\startup\startup_stm32f10x_md_vl.c
[cc] Parsing ..\..\..\cmsis_boot\system_stm32f10x.c
[cc] Parsing ..\..\..\cmsis_boot\stm32f10x.h
[cc] Parsing ..\..\..\cmsis\core_cm3.h
[cc] Parsing ..\..\..\cmsis_boot\system_stm32f10x.h
[cc] Parsing ..\..\..\cmsis_boot\stm32f10x_conf.h
[cc] Parsing ..\..\..\cmsis\core_cmInstr.h
[cc] Parsing ..\..\..\cmsis\core_cmFunc.h
[cc] Parsing D:\microcontrollers\без I2C\project\forumcxemnet\2\hd44780_driver.c
[cc] Parsing ..\..\..\hd44780.h
[cc] Parsing ..\..\..\stm_lib\inc\stm32f10x_gpio.h
[cc] Parsing ..\..\..\stm_lib\inc\stm32f10x_rcc.h
[cc] Parsing ..\..\..\stm_lib\src\stm32f10x_gpio.c
[cc] Parsing ..\..\..\main.c
[cc] Parsing ..\..\..\hd44780_driver.h
[cc] Parsing ..\..\..\stm_lib\src\stm32f10x_rcc.c
[cc] Parsing ..\..\..\hd44780.c
[cc] 7 files are up to date.
[cc] 0 files to be recompiled from dependency analysis.
[cc] 0 total files to be compiled.
[cc] Starting link
[cc] arm-none-eabi-gcc -mcpu=cortex-m3 -mthumb -g -nostartfiles -Wl,-Map=2.map -O0 -Wl,--gc-sections -LC:\microcontrollers\IDEAS\CoIDE\configuration\ProgramData\2 -Wl,-TC:\microcontrollers\IDEAS\CoIDE\configuration\ProgramData\2/arm-gcc-link.ld -g -o 2.elf ..\obj\startup_stm32f10x_md_vl.o ..\obj\system_stm32f10x.o ..\obj\hd44780_driver.o ..\obj\stm32f10x_gpio.o ..\obj\main.o ..\obj\stm32f10x_rcc.o ..\obj\hd44780.o -L..\..\.. -lm -lgcc -lc -lrdimon
[cc] ..\obj\hd44780.o:(.bss+0x0): multiple definition of `data_port'
[cc] ..\obj\hd44780_driver.o:(.bss+0x0): first defined here
[cc] ..\obj\hd44780.o: In function `pause':
[cc] hd44780.c:(.text.pause+0x0): multiple definition of `pause'
[cc] ..\obj\hd44780_driver.o:hd44780_driver.c:(.text.pause+0x0): first defined here
[cc] ..\obj\hd44780.o: In function `lcd_puls':
[cc] hd44780.c:(.text.lcd_puls+0x0): multiple definition of `lcd_puls'
[cc] ..\obj\hd44780_driver.o:hd44780_driver.c:(.text.lcd_puls+0x0): first defined here
[cc] hd44780.c:(.text.lcd_com+0x0): multiple definition of `lcd_com'
[cc] ..\obj\hd44780.o: In function `lcd_com':
[cc] ..\obj\hd44780.o: In function `lcd_dat':
[cc] ..\obj\hd44780_driver.o:hd44780_driver.c:(.text.lcd_com+0x0): first defined here
[cc] hd44780.c:(.text.lcd_dat+0x0): multiple definition of `lcd_dat'
[cc] ..\obj\hd44780_driver.o:hd44780_driver.c:(.text.lcd_dat+0x0): first defined here
[cc] hd44780.c:(.text.lcd_xy+0x0): multiple definition of `lcd_xy'
[cc] ..\obj\hd44780.o: In function `lcd_xy':
[cc] ..\obj\hd44780.o: In function `lcd_init':
[cc] ..\obj\hd44780_driver.o:hd44780_driver.c:(.text.lcd_xy+0x0): first defined here
[cc] hd44780.c:(.text.lcd_init+0x0): multiple definition of `lcd_init'
[cc] ..\obj\hd44780.o: In function `kursor_set':
[cc] ..\obj\hd44780_driver.o:hd44780_driver.c:(.text.lcd_init+0x0): first defined here
[cc] ..\obj\hd44780_driver.o:hd44780_driver.c:(.text.kursor_set+0x0): first defined here
[cc] hd44780.c:(.text.kursor_set+0x0): multiple definition of `kursor_set'
[cc] ..\obj\hd44780.o: In function `lcd_clear':
[cc] hd44780.c:(.text.lcd_clear+0x0): multiple definition of `lcd_clear'
[cc] ..\obj\hd44780_driver.o:hd44780_driver.c:(.text.lcd_clear+0x0): first defined here
[cc] ..\obj\hd44780.o: In function `lcd_out':
[cc] hd44780.c:(.text.lcd_out+0x0): multiple definition of `lcd_out'
[cc] ..\obj\hd44780_driver.o:hd44780_driver.c:(.text.lcd_out+0x0): first defined here
[cc] ..\obj\hd44780.o: In function `lcd_set_user_char':
[cc] hd44780.c:(.text.lcd_set_user_char+0x0): multiple definition of `lcd_set_user_char'
[cc] ..\obj\hd44780_driver.o:hd44780_driver.c:(.text.lcd_set_user_char+0x0): first defined here
[cc]
[cc] collect2.exe: error: ld returned 1 exit status
Вот все что пишет компилятор