1

私のプロジェクトでは、単一のモジュールに依存するいくつかのプラグインがあり、次のGroupようなアイテムが含まれています。

Group {
    name: "group"
    qbs.install: true
    qbs.installDir: "../"
    files: <filename>
}

しかし、コンパイルは「エラー: ファイル ' filename ' と ' filename ' を同じ場所 ' location ' にインストールできません」で失敗します。基本的に、qbs は同じファイルを同じ場所に 2 回コピーすることはできません (私には非論理的なようです)

このバグはどのように解決できますか、または適切な回避策はありますか?

4

2 に答える 2

1

qbs.installSourceBase物件のお仕事です。基本的に、これをグループ内のファイルを含むベース ディレクトリに設定すると、Qbs はqbs.installDir、前述のベース ディレクトリに対する相対パスに基づいて、リストされたファイルを階層的にインストールします。

たとえば、次のグループがあるとします。

// defined in /source/myproject/myproject.qbs
Group {
    qbs.install: true
    qbs.installDir: "share/stuff"
    qbs.installSourceBase: "." // relative to /source/myproject
    files: [
        "fileA.txt",
        "fileB.txt",
        "subdir/fileB.txt",
    ]
}

および次のコマンド ライン呼び出し:

$ qbs [...] --install-root /sample/some-root

次のファイルシステム階層が生成されます。

/sample/some-root/share/stuff/fileA.txt
/sample/some-root/share/stuff/fileB.txt
/sample/some-root/share/stuff/subdir/fileB.txt

詳細については、Qbsインストール プロパティのドキュメントを参照してください。

于 2016-08-16T15:37:27.813 に答える