【发布时间】:2012-11-08 18:35:05
【问题描述】:
我正在使用 Qt Creator 生成一个库,虽然它确实可以工作,但它会生成四个版本的文件,据我所知,除了它们链接在一起之外,它们彼此相同。这些文件的标签如下:libFile.so、libFile.so.1、libFile.so.1.0 和 libFile.so.1.0.0。我只想保留 libFile.so 文件。如何防止生成其他文件并自动链接在一起?
【问题讨论】:
我正在使用 Qt Creator 生成一个库,虽然它确实可以工作,但它会生成四个版本的文件,据我所知,除了它们链接在一起之外,它们彼此相同。这些文件的标签如下:libFile.so、libFile.so.1、libFile.so.1.0 和 libFile.so.1.0.0。我只想保留 libFile.so 文件。如何防止生成其他文件并自动链接在一起?
【问题讨论】:
qmake 为共享库配置生成三个目标。避免创建符号链接的一种选择是将插件配置设置到您的 .pro 文件中:
CONFIG += plugin
或者您可以将用于删除符号链接的构建后脚本放在 destdir 文件夹中。
【讨论】:
只有一个共享对象,其余的只是symbolic links。这就是共享对象命名在类 Unix 系统中的工作方式,以支持向后兼容。在 Wikipedia 上阅读有关 soname 的更多信息。
【讨论】: