need some explanations about files ".a" ".la" ".dll.a"

ludo ludovic.leman@gmail.com
Wed Nov 5 09:56:00 GMT 2008


Hi,

I'm a newbie on cygwin platform and I'm not sure to understand the 
semantic of lib files

It seems that for a library "foo", several files are created :

* cygfoo.dll   => this is the "true" lib. This file contains the real 
code of the lib : It is the equivalent of the "foo.dll" in MS 
terminology. Is this correct ?
* libfoo.a => this is the static lib (contains a set of object file 
(*.o)) : It is the equivalent of the "foo.lib" in MS terminology. Is 
this correct ?
* libfoo.dll.a => this is the import static lib (contains a set of 
object file (*.o) without code, only functions/var names ... ?) : It is 
the equivalent of the import lib "foo.lib" in MS terminology. Is this 
correct ?
* libfoo.la => this is a general description text file created by 
libtool : There is no equivalent MS file in MS terminology. Is this 
correct ?

cygfoo.dll must be in .../bin directory
libfoo.*  must be in .../lib directory

In linux :
.../lib/libfoo.so is the equivalent of .../bin/cygfoo.dll
.../lib/libfoo.a is the equivalent of .../lib/libfoo.a
and there are no equivalent for libfoo.dll.a and libfoo.la in linux ?

when gcc links binaries, it uses only
    .o files
    .a files
    .dll.a files
libfoo.la is a helper file only uses by libtool (not handled by gcc) : 
is that correct ?

Is that correct or I misunderstand the role of those files

Thanks in advance




--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/



More information about the Cygwin mailing list