jcc147 Posted February 22, 2018 Report Posted February 22, 2018 When setting both GINPUT_NEED_MOUSE and GWIN_NEED_WIDGET TRUE, I got this error message: ..\..\ugfx_2.8\src\../src/gwin/gwin_widget.h(340): error: #1204: attribute "deprecated" does not take arguments bool_t DEPRECATED("This call can now be removed. Attaching the mouse to GWIN is now automatic.") gwinAttachMouse(uint16_t instance); How could this happen? Thanks, Josh
Joel Bodenmann Posted February 22, 2018 Report Posted February 22, 2018 Hello Josh, Did you bother actually reading the error message? It's pretty verbose: gwinAttachMouse() is a deprecated call. You don't need to call it yourself manually anymore. Just remove that call from your application code and you'll be ready to go.
jcc147 Posted February 22, 2018 Author Report Posted February 22, 2018 The problem is gwinAttachMouse() is called nowhere in my code. The error is complaining the deprecated attribution doesn't take argument while a message is passed as an argument in gwin_widget.c and gwin_widget.h. #if GFX_USE_GINPUT && GINPUT_NEED_MOUSE bool_t DEPRECATED("This call can now be removed. Attaching the mouse to GWIN is now automatic.") gwinAttachMouse(uint16_t instance) { // This is now a NULL event because we automatically attach to all mice in the system. (void) instance; return TRUE; } #endif The compilation passes if I remove the msg from the deprecated attribute in gfx_compilers.h #define DEPRECATED(msg) __attribute__((deprecated(msg))) to #define DEPRECATED(msg) __attribute__((deprecated))
Joel Bodenmann Posted February 23, 2018 Report Posted February 23, 2018 Can you please tell us which compiler you're using? Also, are you trying to compile a demo or example project?
jcc147 Posted February 24, 2018 Author Report Posted February 24, 2018 I'm using Keil compiler. This project is a tryout to run uGFX on FREERTOS + HY-miniSTM32 (STM32F103VC) board. The base is a FREERTOS demo for HY-miniSTM32 board based on Standard Peripheral Lib. I revised the LCD and Touchscreen driver example codes provided in the uGFX package because the Standard Peripheral Lib is used. By following the instructions provided in the document, there is no problem to integrated uGFX to FREERTOS except the issue of deprecated attribute. Four tasks were created, Task1 : toggling LED1 every 200ms Task2: toggleing LED2 every 300ms Task3: read the input keys. If any key is pressed, the task information is sent to serial console Task4: a uGFX button widget. If the button is pressed, the screen rotates 90 degree. This code is leveraged from a STM32F4 uGFX example. Now the whole project is working fine as long as the deprecated attribute changed to no argument as mentioned earlier. Thanks, Josh
inmarket Posted February 24, 2018 Report Posted February 24, 2018 Can you please give us the exact version of the Keil compiler, and whether you are using it in ARMCC compile mode (the default) or GCC compiler mode. What would also help is if you add #define GFX_SHOW_COMPILER TRUE to your gfxconf.h It will display a warning about what it auto-detected the compiler as. This will help us track down what is causing the incompatibility.
Joel Bodenmann Posted February 25, 2018 Report Posted February 25, 2018 If the auto-detect fails you can always force it by setting GFX_COMPILER to GFX_COMPILER_KEIL in your configuration file: #define GFX_COMPILER GFX_COMPILER_KEIL
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now