What is the difference between *.a
and *.dll
on Windows? From what I understand one can package all the *.o files into a *.a
, which is a distributable that other application can use, on Linux.
But what are the difference between *.a
and *.dll
? Are they interchangeable? If my application needs to link to *.a
, can I link it to *.dll
as a substitute?
Aside: There is no defined *.a format with plain Windows development tools, unless you use a Linux-based tool chain. You're presumably referring to a static library, aka .lib in Windows.
A DLL is the equivalent of a shared library (*.so) on Unix and no, you normally can't link to a shared library/dll if the linker expects you to link against a static library.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With