[llvm-dev] Questions about the methods of compilation.

PeiLIU via llvm-dev llvm-dev at lists.llvm.org
Thu Nov 17 18:45:48 PST 2016

Hi, I have some questions about the compilation of the llvm.
First,  why the majority of the results of compilation are static library (
*.a files in the $(LLVM_HOME)/Release+Asserts/lib/), Why don't generate
dynamic link library (.so files in the directory). The exception is the
file libLTO.a and libLTO.so, why the library LTO were generated for static
and dynamic both? How to control the generation of the library file, could
it be controlled in the file Makefile.config? One item of the
Makefile.config is as follow.

# Do we want to build a shared library and link the tools with it?

Second, I followed the pass specification of the llvm (
http://llvm.org/docs/WritingAnLLVMPass.html) and wrote my own pass to do
something. However, why did it generate the dynamic library (*.so) just
like the example of the specification of LLVMHello.so rather than a static
library because it used the same Makefile.config file with the build of the

Third, How can I get my own pass build together with the LLVM, generate *.a
file in the directory of $(LLVM_HOME)/Release+Asserts/lib/?

Thank you, very appreciate.

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20161118/7c17c506/attachment.html>

More information about the llvm-dev mailing list