本文讲述的linux系统下如何编译dlib的静态库和动态库方法。
dlib源码下载地址
- dlib官网:dlib C++ Library
- GitHub - davisking/dlib: A toolkit for making real world machine learning and data analysis applications in C++
dlib源码的目录结构如下:
编译方法可以参考README.md文件,该文件中的方法默认情况下的编译的是静态库libdlib.a。编译方法如下如下所示:
进入上图所在目录,打开终端窗口,依次执行下面的命令。
mkdir build
cd build
cmake ..
cmake --build .
上述命令执行完成后,会在build/dlib目录下生成libdlib.a
动态库编译
但是很多时候我们不需要使用静态库,而是期望生成动态库进行使用。那么dlib的动态库如何生成呢?经过调研和实测找到了解决方法,方法如下所示:
mkdir build
cd build
cmake -DBUILD_SHARED_LIBS=ON -DDLIB_USE_LAPACK=1 .. #cmake变量DBUILD_SHARED_LIBS是一个全局变量,用于控制cmake是否生成动态库.so
cmake --build .
sudo make install
上述命令执行完成后,到build/dlib目录下可以看到lidlib.so等文件,在/usr/local/lib目录下也能看到libdlib.so等文件。