Short answer: no, GCC can’t use Keil generated .o or .a files reliably.
While they may be using the ABI (arm binary interface), GCC and Keil almost certainly rely on different libc implementations and can have references to functions that the other toolchain doesn’t provide. Also, the debug information may not be compatible (see the error in that wall of text related to DWARF). Finally, while ELF is a standard format, a lot of what goes into an ELF file and the metadata isn’t necessarily standard, and each toolchain does things slightly differently.
Unfortunately, you’re probably best served by compiling all the files in one tool chain.
1
solved gcc can compile with object file compiled from keil-arm compiler?