qbs 1.5.1、Qt 5.6.1、Qt Creator 4.0.1 で生成されたプロジェクトで複数のライブラリを使用しようとしています。
現在、qt ビルド スーツに関していくつか質問があります。
最初の質問: プロパティ文字列を再利用するにはどうすればよいですか? たとえば、いくつかの文字列プロパティを含む製品を定義しようとしましたが、それらのプロパティをプロジェクト内の他の場所で再利用しようとしました。
// defines the qbs file in subfolder settings/settings.qbs
import qbs
Product
{
name: 'config'
property string p1 : 'path1' // <- define p1
property string p2: p1 + '/path2' // <- define p2
}
そして、プロパティを使用しようとします:
私。settings.qbs をルート project.qbs に追加しました
import qbs
import qbs.File
Project{
references:{
...,
"settings/settings.qbs"
}
}
ii. アプリケーションを保持している別のフォルダー
// application/app.qbs
import qbs
CppApplication{
type: "application"
name: "myapp"
Depends {name: "cpp"}
Depends {name: "config"}
cpp.libraryPaths [config.p1, config.p2] // <- use p1 and p2 in a different qbs file
}
しかし、私が走るとき
qbs debug
リポジトリ ルートでは、プロパティ文字列の値は「未定義」です。
2 番目の質問は相対パスです。files:[] で相対パスを使用できるようですが、cpp.dynamicLibraries または cpp.staticLibraries で相対パスを使用すると、コンパイラは相対パスに基づいてライブラリを見つけることができません。しかし、絶対パスを使用すると機能します。私は何かを逃しましたか?
ご協力いただきありがとうございます :)
ロン