When I was going to set up my developing environment for (SDLSimple DirectMediaLayer)
, I downloaded the package provided by the website, from the readme.txt
file I found that I need both .lib
and .dll
...
My question is :
- I am not sure if my understanding is correct : in my thought,
.lib
forwindows
is like.a
forlinux
, is static library, and.dll
forwindows
is like.so
forlinux
, is shared library, is this correct ? - If the idea above is correct, I think we can only use
.lib
or.dll
, since the work they do is the same ? So why bother to get both two in one program ? - And I do not quite understand
.dll
, if my memory servers me right, the one of the advantage forshared library
is they can be updated while the program is running, so how can people do this, if we update the.dll
file, how can an running program get to know the changes of the.dll
and reload it to memory ?