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.
Does Keil support library file with .a extension?
what has the extension got to do with it? more important is the content of the file.
and you haven't said what the file really is, or what it's contents are.
Any tool - not just Keil - will have a set of default file extensions (Please read the manual for details) - but that doesn't stop you from using anything else.
As already noted, the extension doesn't actually affect the content of the file.
Whether it's a good idea to break established idioms/conventions is another matter...
I was trying to compile a project on eCos platform for STM32E board using keil. But the keil was not recognizing the eCos library file with .a extension.
Yes...But then I was getting some errors...seems like keil is not recognizing the ecoslib.a file.
So - was that ecoslib.a file generated with the Keil tools? Or was it an already existing file generated using some other tools?
With some few exceptions (like when the target architecture have a very well defined ABI), you normally always need to compile the library with the same tools or the generated code in the library will not be compatible with the generated code in all the other object files.
The library file was generated using configtool for eCos.
Are you really saying that configtool is a compiler + librarian?
Yes...I have generated the library file using eCos config tool.
But have you generated the library using the Keil linker and the Keil librarian?
It is irrelevant what tools you use for playing with source code defines, include paths, and command line options. What is important is if it is the Keil tools that have created the actual binary files.
the library file (ecoslib.a) was generated using eCos config tool. Then I was trying to create an elf file in keil using this library file and a testfile. Iam not sure whether this will work out. It was just a try. There Iam getting errors.