EtherCardW5100_o.cpp seems like the problem. What is that file? A google search of that file reveals this thread as the only reference. Is it perhaps a copy of an old file (‘_o’ == ‘orig’ perhaps?).
Also, why is the code compiling stuff for a W5100 anyway, I presume you don’t have a wired ethernet connection on your ESP? I guess it might just be compiled because of the Ethernet #include, then not used by the linker.