Hi Junhyeok Ahn, I'm glad you are interested in hermetic builds for C and C++.
I don't think every dependency should be statically linked; quite the opposite. It's usually preferable to dynamically link, so you remain compliant with copyleft licenses that forbid static linking in most cases (e.g. GPL). You will also see benefits when using a remote cache and remote build execution, as many artifacts will reuse the same built libraries instead of duplicating the static archive on all your C/C++ artifacts.
In some cases, static linking makes sense or is even required for industry compliance purposes. Then, it's probably wise to pick your battles only to static link the required libraries.