We are running a survey to help us improve the experience for all of our members. If you see the survey appear, please take the time to tell us about your experience if you can.
I'd like to use compound literals. So as I found in uVision help that if we use --gnu as additional compiler string, this C99 functionality is given.
int y[] = (int []) {1, 2, 3}; // error in strict C99, okay in C99 --gnu int z[] = (int [3]) {1};
Now, I get a lot of linker warnings: multiple defines of a lot of inline function declared in lib_AT91SAM7X512.h It's a pain that keil distributes these device-header files with code inside the header file. How can i get it linking with --gnu option? General: What does --gnu do exactly? It is still ARMCC taken. Or how do I get my compound literals compiled with normal compiler settings (ARMCC)?
Thanks for your help in advance.
Hi,
Can any body help me how to make vibrator controller circuit with output voltage 110Vac and frequency 50HZ??
Hello!
please, send me library lib_AT91SAM7X512.h at email: bug138(at)mail.ru
thank's...
Three different "Original Posters" in this thread?
A header file is not a library file. If you are missing the "lib_AT91SAM7X512.h" file, then you may also miss any library file with the implementation of functions declared in the header file.
I do not think Keil writes all the header files - most of the work (and errors) are probably caused by the chip manufacturers releasing broken (or badly written) header files. The copyright notices in the header file may help deduce the source of the header file.
There are reference pages in the manual that tells what extended syntax that is allowed when you compile with --gnu. It isn't about linking, it is about following strict C99 language rules or not when compiling.