簡體   English   中英

如何在qt qbs中引用外部庫依賴?

[英]How to reference external library dependencies in qt qbs?

假設我已經下載了一些帶有標題和二進制文件的庫xyz,並將它放在不在標准搜索路徑中的某個位置。 對於每個產品,我可以添加搜索路徑和庫以鏈接到cpp.includePaths,cpp.libraryPaths,cpp.staticLibraries等。

有更好的[標准]方法嗎? 如果我正在構建庫作為項目的一部分,似乎我可以在Exports項中定義路徑,然后使用每個Product中的Depends項自動設置路徑。 這似乎是一個很好的機制,我想知道是否有一種方法可以將它用於外部依賴。

qbs文檔有點薄......

謝謝!

您通常會為xyz創建自己的模塊。 您可以通過設置項目的qbsSearchPaths-property來添加QBS搜索模塊和導入的位置。 例如,通過將其設置為“qbs”,QBS將在項目的“qbs / modules”子目錄中搜索其他模塊。

你可以放置一個名為“xyz.qbs”的文件,如下所示:

import qbs
Module {
    Depends { name: "cpp" }
    property string xyzPath: "the/xyz/path"
    cpp.includePaths: xyzPath + "/include"
    cpp.libraryPath: xyzPath + "/lib"
    cpp.staticLibraries: "xyz"
}

然后,您只需在項目中添加Depend即可使用它:

import qbs
Project {
    qbsSearchPaths: "qbs"
    CppApplication {
        name: "myApp"
        files: "src/**"
        Depends { name: "xyz" }
    }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM