[Please help] Is there any option to make static library files ( .a) to shared libraries (.so) ?

Dear experts,

I am trying to learn and use llvm, and I built llvm 2.6 with gcc
4.3.2 on linux.
I encountered an issue to resolve now.

1. Is there any option to build all the llvm libraries to shared
library files with .so extension?
Currently most of the library files come with .a extension which are
static, and only two libLTO.so and libprofile_rt.so files are in .so (
shared ) forms.

Why those two are built in .so files?
What are the functions of those two files ( libLTO.so, libprofile_rt.so )?
Is there any special reason for this?
Is it possible to build the library files into .a files?

I'd really appreciate your help on this issue.
Thank you for your help in advance.

Gyounghwa Kim

Gyounghwa Kim <gyounghwakim@gmail.com> writes:

[snip]

1. Is there any option to build all the llvm libraries to shared
library files with .so extension?

The build of shared libraries is controlled by BUILD_SHARED_LIBS on the
CMake build and --enable-shared on the autotools build. I don't know if
the latter works.

Currently most of the library files come with .a extension which are
static, and only two libLTO.so and libprofile_rt.so files are in .so (
shared ) forms.

Why those two are built in .so files?

Those are plugings, that means that they are intended to be optionally
loaded at runtime by some other application.

What are the functions of those two files ( libLTO.so, libprofile_rt.so )?
Is there any special reason for this?
Is it possible to build the library files into .a files?

It is possible, but useless.