default compilation as shared library. to compile as static, follow the
comments in CMakeLists.txt proposed by Di3