我已经下载了mysql-connector-c-6.0.2。我使用以下命令构建它:
cmake -G "Unix Makefiles" -DCMAKE_INSTALL_PREFIX=<install_dir_path>
make
make install
这将创建以下库文件:
libmysqlclient.a libmysqlclient_r.so libmysqlclient.so libmysql.so libmysql.so.16 libmysql.so.16.0.0
这不会生成libmysqlclient_r.a。如何启用libmysqlclient_r.a的生成?
提前感谢您的帮助。
更新
libmysqlclient_r.so实际上是libmysql.so的符号链接(libmysqlclient_r.so和libmysqlclient.so都是libmysql.so的符号链接。所以它们都是相同的)。通过从libmysql / CMakeLists.txt中的以下行中删除SHARED关键字,可以生成静态库(libmysql.a):
ADD_LIBRARY(libmysql SHARED ${CLIENT_SOURCES} libmysql.def)
答案 0 :(得分:1)
如果没有生成,则由开发人员按意图完成。
检查一些构建选项,可能有选项可以启用libmysqlclient_r
的静态构建。如果不是 - 你必须在CMakeLists.txt
之一中找到它的目标声明并调整它以启用静态构建。