RoboCix

EmWin To UGFX

31 posts in this topic

This is the error when just building the project you attached without any modifications: compiler_output.txt
These are the two only errors:

.\Objects\Widge_Create_Ugfx.axf: Error: L6200E: Symbol __ARM_use_no_argv multiply defined (by gui.o and main.o).
.\Objects\Widge_Create_Ugfx.axf: Error: L6200E: Symbol main multiply defined (by gui.o and main.o).

It tells you exactly what your problem is: You have multiple definitions of the main() function. It even tells you where they are. So currently your problem is that you have your own main.c() and the one that comes as part of the demo. Simply commenting out your own main() function allows you to get rid of that problem. Then, you'll hit the next problem: 

.\Objects\Widge_Create_Ugfx.axf: Error: L6218E: Undefined symbol dialGCreate (referred from gui.o).
.\Objects\Widge_Create_Ugfx.axf: Error: L6218E: Undefined symbol dialGetAngle (referred from gui.o).
.\Objects\Widge_Create_Ugfx.axf: Error: L6218E: Undefined symbol dialSetAngle (referred from gui.o).
.\Objects\Widge_Create_Ugfx.axf: Error: L6218E: Undefined symbol assert (referred from gfx_mk.o).

You haven't added the other source files that came as part of the demo/widget to the project (you're missing dial.c and probably dial.h is not in the include path, but I haven't checked that).

Share this post


Link to post
Share on other sites

I looked at the link below. He was talking about the error you said. But there is nothing defined in my main.c file.

Could you edit the example of the dial widget for the keil. So it could be a good example for everyone. I guess I do not understand :-)

http://www.keil.com/support/docs/3724.htm

 

Share this post


Link to post
Share on other sites
3 hours ago, RoboCix said:

But there is nothing defined in my main.c file.

Note that this is not about #defines. This is about function definitions (the C functions). There must only ever be one function named main in the entire program/application. The project you're having has two: One in main.c and one in gui.c. Simply remove the one in main.c (because the one in gui.c is the one from the demo that does everything you want) and you can continue to compile. Then you'll hit the next problem as described above.

Share this post


Link to post
Share on other sites

You need to get someone who can understand English better to help you with the instructions above. The instructions above have been clear and simple. We speak a limited range of languages and we run this forum in English. We do our best to help but we can't help where our words are not understood. 

Share this post


Link to post
Share on other sites

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 account

Sign in

Already have an account? Sign in here.


Sign In Now