16

qmake を使用して Linux で動的ライブラリを構築しようとしています。ここに私の .pro ファイルがあります:

TEMPLATE = lib
TARGET = sqxUiBase
QT += core gui   
CONFIG += dll    
INCLUDEPATH += ../../public/include   
DEPENDPATH += .
UI_DIR += ../GeneratedFiles    
RCC_DIR += ../GeneratedFiles   
CONFIG(release, debug|release) {
    DESTDIR = ../lib/release
    LIBS += -L"../lib/release"
    MOC_DIR += ../GeneratedFiles/release
    OBJECTS_DIR += release
} else {    
    DESTDIR = ../lib/debug
    LIBS += -L"../lib/debug"
    MOC_DIR += ../GeneratedFiles/debug
    OBJECTS_DIR += debug
} 

include(sqxUiBase.pri)

sqxUiBase.pri ファイルには、ビルドする必要があるファイルのリストが含まれています。

さて、問題は、私が何をしても、結果のファイルには常に名前が付けられsqxUiBase.so.1.0.0、多数のシンボリックリンク ( sqxUiBase.sosqxUiBase.so.1およびsqxUiBase.so.1.0) がそれを指していることです。sqxUiBase.soファイルだけでリンクがないようにするにはどうすればよいですか?

4

2 に答える 2

21

あなたが探しているのは、を作ることpluginです。

プロジェクト ファイルに追加CONFIG += pluginすると、qmake はlibFoo.so番号付きリンクなしでファイルをビルドする Makefile を生成します

于 2010-09-20T20:36:53.623 に答える
12

qmake ソースを見た後CONFIG += unversioned_libname、nix とCONFIG += skip_target_version_extWindows で見つけました。

于 2015-01-22T14:11:17.657 に答える