2016-11-07 59 views
2

我正在使用Boost庫在我的C++項目中。使用Boost庫更新翻譯庫Qt C++

我把它放置在PRO文件是這樣的:

win32: INCLUDEPATH += C:/boost_1_60_0 
win32: LIBS += "-LC:/boost_1_60_0/stage/lib/" 

但是,當我在終端上運行下面的命令(CMD)來更新我的翻譯文件:

lupdate MyProject.pro 

它搜索Boost庫路徑中的文件以進行更新。

這是正常的嗎?我能做些什麼來不在Boost庫路徑中搜索?

現在,我需要運行lupdate命令來評論Boost include行,但我不想每次需要更新我的翻譯文件時都這樣做。

的Qt 5.3.2

升壓1.6.0

+0

我有同樣的問題!您是否找到了更好的解決方案,然後每次評論提升? – DvoryankinEvgeny

+0

對不起,我還沒有找到其他解決方案。 – KelvinS

+0

@DvoryankinEvgeny請看看cbuchart答案。 – KelvinS

回答

1

有一個在錯誤報告(QTBUG-27936),涉及在工程的.pro的TR_EXCLUDE選擇一種解決方法。它用於告知lupdate排除某些文件。我使用Qt 5.6和5.8進行了測試,並且按預期工作。在這裏有我的.pro文件的摘錄:

INCLUDEPATH += /Users/user/libs/boost 
TR_EXCLUDE += /Users/user/libs/boost/* 

以前的答案 這是以前的答案,這是我無法證實,它恰好是錯誤的。我讓它在這裏,所以它被記錄下來。錯誤報告(QTBUG-27936)中有一個解決方法,它將所有Boost庫包括在預編譯頭文件中,因爲lupdate不會查看它。

+0

謝謝@cbuchart。你有什麼樣的例子可以用'PRECOMPILED_HEADER'和'win32:INCLUDEPATH + = C:/ boost_1_60_0'這個語句嗎? – KelvinS

+2

對不起,我今天測試過,並沒有解決問題。我已經用一個可行的解決方案更新了答案。 – cbuchart

+1

非常感謝你@cbuchart,它的工作。在我的情況下,我使用:'win32:TR_EXCLUDE + = C:/ boost_1_60_0/*' – KelvinS