build libgit2 for current host

step1、安装依赖

所有时Terminal + Shell + GNU CoreUtils
下载时cURL
解压时tar + gzip
编译时cmakeninjagcc / GCC | Clang / LLVM
运行时glibc ( libc.sold-linux-x86-64.so )

step2、使用curl命令下载libgit2源码包 (

curl -LO https://github.com/libgit2/libgit2/releases/download/v1.0.1/libgit2-1.0.1.tar.gz

step3、使用tar解压libgit2源码包

tar vxf libgit2-1.0.1.tar.gz

step4、进入libgit2-1.0.1目录

cd libgit2-1.0.1

step5、查看libgit2-1.0.1目录中的内容

step6、使用cmake命令配置编译参数

cmake [option]... -D<变量>=<值> -S <sourceDIR> -B <buildDIR>
本软件特有的变量类型默认值说明
BUILD_CLARBOOLON是否编译单元测试代码
BUILD_FUZZERSBOOLOFF是否编译模糊测试代码
BUILD_EXAMPLESBOOLOFF是否编译示例代码
BUILD_SHARED_LIBSBOOLON是否生成动态库
ENABLE_WERRORBOOLOFF是否指定C编译器-werror参数
ENABLE_TRACEBOOLON
DEPRECATE_HARDBOOLOFF是否包含被标记为deprecated的代码
PROFILEBOOLOFF是否进行性能分析
SONAMEBOOLON是否给so|dylib带上版本号
TAGSBOOLOFF是否生成tags
THREADSAFEBOOLON是否支持线程安全
REGEX_BACKENDSTRING
是否哪个正则表达式库
regcomp_l | pcre2 | pcre | regcomp | builtin
ZLIB_INCLUDE_DIRPATH指定zlib头文件所在目录
ZLIB_LIBRARYFILEPATH设置libz.{a | so | dylib}的路径
USE_ICONVBOOLON是否使用libiconv
ICONV_INCLUDE_DIRPATH设置libiconv头文件所在目录
OPENSSL_INCLUDE_DIRPATH指定OpenSSL头文件所在目录
OPENSSL_SSL_LIBRARYFILEPATH设置libssl.{a | so | dylib}的路径
OPENSSL_CRYPTO_LIBRARYFILEPATH设置libcrypto.{a | so | dylib}的路径
MBEDTLS_INCLUDE_DIRPATH指定mbedTLS头文件所在目录
MBEDTLS_LIBRARYFILEPATH设置libmbedtls.{a | so | dylib}的路径
MBEDCRYPTO_LIBRARYFILEPATH设置libmbedcrypto.{a | so | dylib}的路径
MBEDX509_LIBRARYFILEPATH设置libmbedx509.{a | so | dylib}的路径
PCRE_INCLUDE_DIRPATH指定pcre头文件所在目录
PCRE_LIBRARYFILEPATH设置libpcre.{a | so | dylib}的路径
PCRE_POSIX_LIBRARYFILEPATH设置libpcre-posix.{a | so | dylib}的路径
PCRE2_INCLUDE_DIRPATH指定pcre2头文件所在目录
PCRE2_LIBRARYFILEPATH设置libpcre2.{a | so | dylib}的路径
PCRE2_POSIX_LIBRARYFILEPATH设置libpcre2-posix.{a | so | dylib}的路径
USE_HTTPSBOOLON是否支持HTTPS
USE_NTLMCLIENTBOOLON是否支持NTLM
USE_SHA1BOOLON是否支持SHA-1
USE_SSHBOOLON是否使用libssh2
USE_GSSAPIBOOLOFF是否使用libgss

示例:

cmake \
    -DCMAKE_BUILD_TYPE=Release \
    -DCMAKE_INSTALL_PREFIX=/usr \
    -G Ninja \
    -Wno-dev \
    -S . \
    -B build.d

step7、使用cmake命令进行编译

cmake --build build.d

step8、使用cmake命令进行安装

cmake --install build.d