@PoP:
1. There's a very strong possibility poor TCC doesn't know how to deal with LTO objects in the static library

.
2. Never pass -static to anything, anywhere, ever ^^. -static ranges from evil to actively broken when using the glibc. It's only useful in very, very, very specific circumstances (generally, when you're static linking to an alternate libc that's designed for that, f.g., musl).