You misunderstood the range of linking. all code that is compiled by the FPC compiler is statically linked there is no dynamic link (yet?). FPGUI and lcl do not provide obj files for system libraries and choose to bind with them directly either statically or dynamically. A static bind is one that uses the extern type of linking and a dynamic binding is the one that use loadlibrary, getprocaddress etc procedures to bind to the libraries at runtime. Both are referred to as static/dynamic linking but they are different processes that is why I prefer to call the process of attaching to external libraries as binding instead of linking although the linker is responsible on both cases.
So in short if the code is not compile by fpc then its probably a bind usually a static bind becoming.