Hello!
I'm trying since a while to integrate this lib into a project and begin to play with my screen (the 2.8" w/touchscreen ILI9341, similar to those who sell Adafruit). My setup is Linux mint KDE 17.3, Eclipse Neon + GNU ARM Eclipse, NucleoF401RE board, the project was created with CubeMX and imported according with the method of Carmine Noviello (I successfully draw some things in a SSD1306 OLED screen with the U8GLib trough I2C and DMA).
Since the Makefile is generated with some automake I make a makefile.init with this content:
GFXLIB = /home/jano/STM32Toolchain/workspace/ili9341-ugfx-uno/ugfx
include $(GFXLIB)/gfx.mk
In project properties->C/C++Build->Settings->ToolSettings added the include path "../ugfx" for the sections "Cross ARM GNU Assembler", "Cross ARM C Compiler" and "Cross ARM C++ Compiler", in "Cross ARM C++ Linker"->Miscellaneous->Other objects I added: $(GFXSRC)
The methods in board_ILI9341.h seems to have nothing to do with the errors I have, I can comment everything and nothing new happens.
This are some of the results of the compilation in the console:
Building target: ili9341-ugfx-uno.elf
Invoking: Cross ARM C++ Linker
arm-none-eabi-g++ -mcpu=cortex-m4 -mthumb -Og -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -ffreestanding -fno-move-loop-invariants -Wall -Wextra -g3 -T mem.ld -T libs.ld -T sections.ld -nostartfiles -Xlinker --gc-sections -L"../ldscripts" -Wl,-Map,"ili9341-ugfx-uno.map" --specs=nano.specs -u _printf_float -o "ili9341-ugfx-uno.elf" ./system/src/stm32f4xx/stm32f4xx_hal.o ./system/src/stm32f4xx/stm32f4xx_hal_cortex.o ./system/src/stm32f4xx/stm32f4xx_hal_dma.o ./system/src/stm32f4xx/stm32f4xx_hal_dma_ex.o ./system/src/stm32f4xx/stm32f4xx_hal_flash.o ./system/src/stm32f4xx/stm32f4xx_hal_flash_ex.o ./system/src/stm32f4xx/stm32f4xx_hal_flash_ramfunc.o ./system/src/stm32f4xx/stm32f4xx_hal_gpio.o ./system/src/stm32f4xx/stm32f4xx_hal_pwr.o ./system/src/stm32f4xx/stm32f4xx_hal_pwr_ex.o ./system/src/stm32f4xx/stm32f4xx_hal_rcc.o ./system/src/stm32f4xx/stm32f4xx_hal_rcc_ex.o ./system/src/stm32f4xx/stm32f4xx_hal_spi.o ./system/src/stm32f4xx/stm32f4xx_hal_tim.o ./system/src/stm32f4xx/stm32f4xx_hal_tim_ex.o ./system/src/newlib/_cxx.o ./system/src/newlib/_exit.o ./system/src/newlib/_sbrk.o ./system/src/newlib/_startup.o ./system/src/newlib/_syscalls.o ./system/src/newlib/assert.o ./system/src/diag/Trace.o ./system/src/diag/trace_impl.o ./system/src/cortexm/_initialize_hardware.o ./system/src/cortexm/_reset_hardware.o ./system/src/cortexm/exception_handlers.o ./system/src/cmsis/startup_stm32f401xe.o ./system/src/cmsis/system_stm32f4xx.o ./system/src/cmsis/vectors_stm32f4xx.o ./src/main.o ./src/stm32f4xx_hal_msp.o ./src/stm32f4xx_it.o /home/jano/STM32Toolchain/workspace/ili9341-ugfx-uno/ugfx/src/gfx.c /home/jano/STM32Toolchain/workspace/ili9341-ugfx-uno/ugfx/src/gos/gos_chibios.c /home/jano/STM32Toolchain/workspace/ili9341-ugfx-uno/ugfx/src/gos/gos_freertos.c /home/jano/STM32Toolchain/workspace/ili9341-ugfx-uno/ugfx/src/gos/gos_win32.c /home/jano/STM32Toolchain/workspace/ili9341-ugfx-uno/ugfx/src/gos/gos_linux.c /home/jano/STM32Toolchain/workspace/ili9341-ugfx-uno/ugfx/src/gos/gos_osx.c /home/jano/STM32Toolchain/workspace/ili9341-ugfx-uno/ugfx/src/gos/gos_raw32.c /home/jano/STM32Toolchain/workspace/ili9341-ugfx-uno/ugfx/src/gos/gos_ecos.c /home/jano/STM32Toolchain/workspace/ili9341-ugfx-uno/ugfx/src/gos/gos_rawrtos.c /home/jano/STM32Toolchain/workspace/ili9341-ugfx-uno/ugfx/src/gos/gos_arduino.c /home/jano/STM32Toolchain/workspace/ili9341-ugfx-uno/ugfx/src/gos/gos_cmsis.c /home/jano/STM32Toolchain/workspace/ili9341-ugfx-uno/ugfx/src/gos/gos_nios.c /home/jano/STM32Toolchain/workspace/ili9341-ugfx-uno/ugfx/src/gos/gos_x_threads.c /home/jano/STM32Toolchain/workspace/ili9341-ugfx-uno/ugfx/src/gos/gos_x_heap.c /home/jano/STM32Toolchain/workspace/ili9341-ugfx-uno/ugfx/src/gdriver/gdriver.c /home/jano/STM32Toolchain/workspace/ili9341-ugfx-uno/ugfx/src/gqueue/gqueue.c /home/jano/STM32Toolchain/workspace/ili9341-ugfx-uno/ugfx/src/gdisp/gdisp.c /home/jano/STM32Toolchain/workspace/ili9341-ugfx-uno/ugfx/src/gdisp/gdisp_fonts.c /home/jano/STM32Toolchain/workspace/ili9341-ugfx-uno/ugfx/src/gdisp/gdisp_pixmap.c /home/jano/STM32Toolchain/workspace/ili9341-ugfx-uno/ugfx/src/gdisp/gdisp_image.c /home/jano/STM32Toolchain/workspace/ili9341-ugfx-uno/ugfx/src/gdisp/gdisp_image_native.c /home/jano/STM32Toolchain/workspace/ili9341-ugfx-uno/ugfx/src/gdisp/gdisp_image_gif.c /home/jano/STM32Toolchain/workspace/ili9341-ugfx-uno/ugfx/src/gdisp/gdisp_image_bmp.c /home/jano/STM32Toolchain/workspace/ili9341-ugfx-uno/ugfx/src/gdisp/gdisp_image_jpg.c /home/jano/STM32Toolchain/workspace/ili9341-ugfx-uno/ugfx/src/gdisp/gdisp_image_png.c /home/jano/STM32Toolchain/workspace/ili9341-ugfx-uno/ugfx/src/gdisp/mcufont/mf_encoding.c /home/jano/STM32Toolchain/workspace/ili9341-ugfx-uno/ugfx/src/gdisp/mcufont/mf_font.c /home/jano/STM32Toolchain/workspace/ili9341-ugfx-uno/ugfx/src/gdisp/mcufont/mf_justify.c /home/jano/STM32Toolchain/workspace/ili9341-ugfx-uno/ugfx/src/gdisp/mcufont/mf_kerning.c /home/jano/STM32Toolchain/workspace/ili9341-ugfx-uno/ugfx/src/gdisp/mcufont/mf_rlefont.c /home/jano/STM32Toolchain/workspace/ili9341-ugfx-uno/ugfx/src/gdisp/mcufont/mf_bwfont.c /home/jano/STM32Toolchain/workspace/ili9341-ugfx-uno/ugfx/src/gdisp/mcufont/mf_scaledfont.c /home/jano/STM32Toolchain/workspace/ili9341-ugfx-uno/ugfx/src/gdisp/mcufont/mf_wordwrap.c /home/jano/STM32Toolchain/workspace/ili9341-ugfx-uno/ugfx/src/gevent/gevent.c /home/jano/STM32Toolchain/workspace/ili9341-ugfx-uno/ugfx/src/gtimer/gtimer.c /home/jano/STM32Toolchain/workspace/ili9341-ugfx-uno/ugfx/src/gwin/gwin.c /home/jano/STM32Toolchain/workspace/ili9341-ugfx-uno/ugfx/src/gwin/gwin_widget.c /home/jano/STM32Toolchain/workspace/ili9341-ugfx-uno/ugfx/src/gwin/gwin_wm.c /home/jano/STM32Toolchain/workspace/ili9341-ugfx-uno/ugfx/src/gwin/gwin_console.c /home/jano/STM32Toolchain/workspace/ili9341-ugfx-uno/ugfx/src/gwin/gwin_graph.c /home/jano/STM32Toolchain/workspace/ili9341-ugfx-uno/ugfx/src/gwin/gwin_button.c /home/jano/STM32Toolchain/workspace/ili9341-ugfx-uno/ugfx/src/gwin/gwin_slider.c /home/jano/STM32Toolchain/workspace/ili9341-ugfx-uno/ugfx/src/gwin/gwin_checkbox.c /home/jano/STM32Toolchain/workspace/ili9341-ugfx-uno/ugfx/src/gwin/gwin_image.c /home/jano/STM32Toolchain/workspace/ili9341-ugfx-uno/ugfx/src/gwin/gwin_label.c /home/jano/STM32Toolchain/workspace/ili9341-ugfx-uno/ugfx/src/gwin/gwin_radio.c /home/jano/STM32Toolchain/workspace/ili9341-ugfx-uno/ugfx/src/gwin/gwin_list.c /home/jano/STM32Toolchain/workspace/ili9341-ugfx-uno/ugfx/src/gwin/gwin_progressbar.c /home/jano/STM32Toolchain/workspace/ili9341-ugfx-uno/ugfx/src/gwin/gwin_container.c /home/jano/STM32Toolchain/workspace/ili9341-ugfx-uno/ugfx/src/gwin/gwin_frame.c /home/jano/STM32Toolchain/workspace/ili9341-ugfx-uno/ugfx/src/gwin/gwin_tabset.c /home/jano/STM32Toolchain/workspace/ili9341-ugfx-uno/ugfx/src/gwin/gwin_gl3d.c /home/jano/STM32Toolchain/workspace/ili9341-ugfx-uno/ugfx/src/gwin/gwin_keyboard.c /home/jano/STM32Toolchain/workspace/ili9341-ugfx-uno/ugfx/src/gwin/gwin_keyboard_layout.c /home/jano/STM32Toolchain/workspace/ili9341-ugfx-uno/ugfx/src/gwin/gwin_textedit.c /home/jano/STM32Toolchain/workspace/ili9341-ugfx-uno/ugfx/src/ginput/ginput.c /home/jano/STM32Toolchain/workspace/ili9341-ugfx-uno/ugfx/src/ginput/ginput_mouse.c /home/jano/STM32Toolchain/workspace/ili9341-ugfx-uno/ugfx/src/ginput/ginput_keyboard.c /home/jano/STM32Toolchain/workspace/ili9341-ugfx-uno/ugfx/src/ginput/ginput_keyboard_microcode.c /home/jano/STM32Toolchain/workspace/ili9341-ugfx-uno/ugfx/src/ginput/ginput_toggle.c /home/jano/STM32Toolchain/workspace/ili9341-ugfx-uno/ugfx/src/ginput/ginput_dial.c /home/jano/STM32Toolchain/workspace/ili9341-ugfx-uno/ugfx/src/gadc/gadc.c /home/jano/STM32Toolchain/workspace/ili9341-ugfx-uno/ugfx/src/gaudio/gaudio.c /home/jano/STM32Toolchain/workspace/ili9341-ugfx-uno/ugfx/src/gmisc/gmisc.c /home/jano/STM32Toolchain/workspace/ili9341-ugfx-uno/ugfx/src/gmisc/gmisc_arrayops.c /home/jano/STM32Toolchain/workspace/ili9341-ugfx-uno/ugfx/src/gmisc/gmisc_matrix2d.c /home/jano/STM32Toolchain/workspace/ili9341-ugfx-uno/ugfx/src/gmisc/gmisc_trig.c /home/jano/STM32Toolchain/workspace/ili9341-ugfx-uno/ugfx/src/gfile/gfile.c /home/jano/STM32Toolchain/workspace/ili9341-ugfx-uno/ugfx/src/gfile/gfile_fs_native.c /home/jano/STM32Toolchain/workspace/ili9341-ugfx-uno/ugfx/src/gfile/gfile_fs_ram.c /home/jano/STM32Toolchain/workspace/ili9341-ugfx-uno/ugfx/src/gfile/gfile_fs_rom.c /home/jano/STM32Toolchain/workspace/ili9341-ugfx-uno/ugfx/src/gfile/gfile_fs_fatfs.c /home/jano/STM32Toolchain/workspace/ili9341-ugfx-uno/ugfx/src/gfile/gfile_fs_petitfs.c /home/jano/STM32Toolchain/workspace/ili9341-ugfx-uno/ugfx/src/gfile/gfile_fs_mem.c /home/jano/STM32Toolchain/workspace/ili9341-ugfx-uno/ugfx/src/gfile/gfile_fs_chibios.c /home/jano/STM32Toolchain/workspace/ili9341-ugfx-uno/ugfx/src/gfile/gfile_fs_strings.c /home/jano/STM32Toolchain/workspace/ili9341-ugfx-uno/ugfx/src/gfile/gfile_printg.c /home/jano/STM32Toolchain/workspace/ili9341-ugfx-uno/ugfx/src/gfile/gfile_scang.c /home/jano/STM32Toolchain/workspace/ili9341-ugfx-uno/ugfx/src/gfile/gfile_stdio.c /home/jano/STM32Toolchain/workspace/ili9341-ugfx-uno/ugfx/src/gfile/gfile_fatfs_wrapper.c /home/jano/STM32Toolchain/workspace/ili9341-ugfx-uno/ugfx/src/gfile/gfile_fatfs_diskio_chibios.c /home/jano/STM32Toolchain/workspace/ili9341-ugfx-uno/ugfx/src/gfile/gfile_petitfs_wrapper.c /home/jano/STM32Toolchain/workspace/ili9341-ugfx-uno/ugfx/src/gfile/gfile_petitfs_diskio_chibios.c /home/jano/STM32Toolchain/workspace/ili9341-ugfx-uno/ugfx/src/gtrans/gtrans.c
/home/jano/STM32Toolchain/workspace/ili9341-ugfx-uno/ugfx/src/gos/gos_raw32.c:29:4: warning: #warning "GOS: Raw32 - Make sure you initialize your hardware and the C runtime before calling gfxInit() in your application!" [-Wcpp]
#warning "GOS: Raw32 - Make sure you initialize your hardware and the C runtime before calling gfxInit() in your application!"
^
/home/jano/STM32Toolchain/workspace/ili9341-ugfx-uno/ugfx/src/gos/gos_x_threads.c: In function 'threadreturn_t gfxThreadWait(gfxThreadHandle)':
/home/jano/STM32Toolchain/workspace/ili9341-ugfx-uno/ugfx/src/gos/gos_x_threads.c:646:4: error: invalid conversion from 'gfxThreadHandle {aka void*}' to 'thread*' [-fpermissive]
t = th;
^
/home/jano/STM32Toolchain/workspace/ili9341-ugfx-uno/ugfx/src/gos/gos_x_heap.c: In function 'void* gfxAlloc(size_t)':
/home/jano/STM32Toolchain/workspace/ili9341-ugfx-uno/ugfx/src/gos/gos_x_heap.c:76:32: error: expected unqualified-id before 'new'
register memslot *prev, *p, *new;
^
/home/jano/STM32Toolchain/workspace/ili9341-ugfx-uno/ugfx/src/gos/gos_x_heap.c:76:32: error: expected initializer before 'new'
/home/jano/STM32Toolchain/workspace/ili9341-ugfx-uno/ugfx/src/gos/gos_x_heap.c:86:9: error: expected type-specifier before '=' token
new = (memslot *)((char *)p + sz);
^
/home/jano/STM32Toolchain/workspace/ili9341-ugfx-uno/ugfx/src/gos/gos_x_heap.c:87:8: error: expected type-specifier before '->' token
new->next = p->next;
^
and more like this, attached is the complete error log, main.c and board_ILI9341.h
do I missing to include something? or should tell something more to the compiler? any ideas? Thanks for reading.
err.txt
main.c
board_ILI9341.h