【问题标题】:libmysqlclient_r.a not getting generatedlibmysqlclient_r.a 未生成
【发布时间】:2012-07-02 10:50:11
【问题描述】:

我已经下载了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)

【问题讨论】:

    标签: mysql database linux cmake mysql-connector


    【解决方案1】:

    如果没有生成,那就是开发者有意为之。

    检查一些构建选项,也许有启用libmysqlclient_r 的静态构建的选项。如果不是 - 您必须在 CMakeLists.txt 之一中找到它的目标声明并调整它以启用静态构建。

    【讨论】:

    • 感谢您的回答。这真的很有帮助。我真的很感激。
    猜你喜欢
    • 2011-05-28
    • 1970-01-01
    • 2019-02-23
    • 2016-12-10
    • 2011-08-10
    • 1970-01-01
    • 2014-01-29
    • 2023-03-26
    • 1970-01-01
    相关资源
    最近更新 更多