GCC Linker Questions

Apologize, because at the moment I do not have the environment for the experiment and independently solve the following issues:

1) Let's say I have four library files: libmylib_super.aand libmylib_super.so, mylib_dumb.aand mylib_dumb.so. With references to the libraries, what are the differences between the following approaches:

A) -l:libmylib_super.a
B) -llibmylib_super
C) -lmylib_super
D)-lmylib_dumb

2) Definition -staticon the man page:

On systems that support dynamic linking, this prevents shared libraries. On other systems, this option has no effect.

Does this linker setting relate to question # 1? Or ... by chance they will interfere with each other?

Thanks.

--- edited 2009-12-28 ---

, Boost date_time. , : libboost_date_time-mt-d.a, libboost_date_time-mt-d.so.1.41.0, libboost_date_time-mt-d.so -> libboost_date_time-mt-d.so.1.41.0 (sym link).

A.1) -l:libboost_date_time-mt-d.a == > OK, .
A.2) -l:libboost_date_time-mt-d.a -static == > /usr/bin/ld: cannot find -lm

C.1) -lboost_date_time-mt-d == > OK, , .
C.2) -lboost_date_time-mt-d -static == > /usr/bin/ld: cannot find -lm

A.2 C.2?

, C.1, , libboost_date_time-mt-d.so.1.41.0, libboost_date_time-mt-d.so. , ? ?

+5
1

,

A) libmylib_super.a ( )

B) liblibmylib_super.so , liblibmylib_super.a liblibmylib_super.a, -static - , lib

C) libmylib_super.so , libmylib_super.a liblibmylib_super.so, -static

D) . C)

, B) , , lib .

, D) , mylib_dumb .

. GNU:

-l namespec

- = namespec

, , . . namespec : filename, ld filename, libnamespec.a.

, , ld , libnamespec.a. , ELF SunOS ld libnamespec.so libnamespec.a. ( .so .) , : filename, filename.

, , . undefined , , . undefined , , .

. - ( , .

.

Unix-. , ld AIX, , AIX.

+9