2016-11-18 135 views
0

這個問題與我之前發佈的這個問題有關:How to include a library in a Qt project如何構建用於Qt的C++庫

我想創建一個使用TagLib庫的項目。我不確定如何去做。我已經下載TagLib 1.11.1

我建立它下面的步驟在this tutorial

構建zlib的,首先有CMake的創建一個Visual Studio解決方案文件,然後建立與Visual Studio這樣的解決方案:

的mkdir構建& & cd build cmake .. -G「Visual Studio 14 2015 Win64」-DCMAKE_INSTALL_PREFIX =「e:\ workspace \ lib \ installed」 msbuild/P:Configuration = Debug INST ALL.vcxproj 的MSBuild/P:配置=釋放INSTALL.vcxproj

建立標籤庫多以同樣的方式:

CD .... \的taglib-1.11.1 的mkdir構建& & cd build cmake .. -G「Visual Studio 14 2015 Win64」-DCMAKE_INSTALL_PREFIX =「e:\ workspace \ lib \ installed」-DZLIB_INCLUDE_DIR =「e:\ workspace \ lib \ installed \ include」-DZLIB_LIBRARY =「e :\ workspace \ lib \ installed \ lib \ zlib.lib「-DWITH_ASF = on -DWITH_MP4 = on -DBUILD_EXAMPLES = on msbuild/P:Configuration = Release INSTALL.vcxproj

此構建過程似乎在Qt項目中不起作用。

有人請指點我正確的方向如何建立taglib Release 1.11.1 (Windows 10)

東西在像HERE **這樣的方向可能真的有幫助。我開始使用C++,關於構建庫文件的文檔非常有限。它可以節省大量的時間,爲其他人嘗試構建用於Qt的庫文件。

謝謝大家提前。

+0

你成功了嗎? –

+0

沒有。仍在努力解決它。如果可以的話請幫忙。將不勝感激@Sergey Gatich。 –

+0

請詳細描述問題。你使用什麼操作系統,IDE,編譯器?你在什麼階段面臨問題? –

回答

1

如果您有TagLib的源代碼,您可以在MS VS 2015中創建一個解決方案,然後添加一個包含您的Qt項目和另一個包含TagLib的子項目(即DLL庫)的子項目。之後,您可以將您的Qt項目與TagLib鏈接起來:

  1. 右鍵單擊Qt項目,選擇Properties
  2. 在左側面板中選擇Common Properties,References
  3. 選擇Add new reference並添加TagLib項目。
  4. 然後選擇C/C++,General,Additional Include Directories
  5. 在那裏添加你在Qt項目中使用的TagLig頭文件的相對路徑。

之後,你可以在你的Qt項目中只包含文件名而沒有相對路徑。例如:

#include "SomeHeaderFromTagLib.h" 

如果您有任何問題,隨時問,我會更新帖子。

UPDATE 1 您可以使用Qt Creator而不是Visual Studio。社區版可以從Qt網站下載。文檔如何使用Qt Creator的配置CMake的:

http://doc.qt.io/qtcreator/creator-project-cmake.html

更新2 確保您使用相應的Qt版本。如果您正在處理MS VS 2015 C++編譯器,那麼您應該使用使用此編譯器並僅使用此編譯器(msvc2015版本)構建的Qt版本。

UPDATE 3 如果您使用的是Qt MSVC 2013 32位,那麼您應該使用32位TagLib庫。你應該有以下選項編譯:中

cmake .. -G"Visual Studio 12 2013" 

代替

cmake .. -G"Visual Studio 14 2015 Win64" 

請注意,你應該有你的機器上MS VC編譯器2013。

後您編譯標籤庫,Qt Creator中打開你的Qt的項目:它

  1. 單擊鼠標右鍵。
  2. 選擇Add library...
  3. 選擇External
  4. 選擇庫文件(.lib)

然後在整個項目右鍵單擊並選擇Run qmake。 之後,你應該能夠建立該項目。

+0

'右鍵單擊Qt項目,選擇屬性 - >在Qt中這是不可能的。在Qt中沒有任何屬性,Qt Creator 3.6.0,基於Qt 5.5.1(MSVC 2013,32位) –

+1

它僅涉及Microsoft Visual Studio。我將添加UPDATE 3來解釋如何在Qt Creator中添加庫。 –

+0

查看我的更新3. –