2014-01-12 61 views
3

我已經添加qcustomplot.h/.c文件到我的Qt項目。它們位於:「QT_PROJECT_DIR/QCustomPlot /」。Qt自動生成的表單提供錯誤的源代碼文件路徑

我每次使用設計器Qt Creator中,並建立我ui_mainwindow.h得到這個錯誤:

error: ../../qcustomplot.h: No such file or directory 
#include "../../qcustomplot.h" 

這當然是真的,因爲它位於:「QT_PROJECT_DIR/QCustomPlot /」

如何更改Qt Designer如何自動生成此路徑?

如果有幫助,這是我的.pro:

#------------------------------------------------- 
# 
# Project created by QtCreator 2014-01-12T00:44:44 
# 
#------------------------------------------------- 

QT  += core gui 

greaterThan(QT_MAJOR_VERSION, 4): QT += widgets widgets opengl printsupport 

TARGET = Test 
TEMPLATE = app 

SOURCES += main.cpp\ 
     mainwindow.cpp \ 
    QCustomPlot/qcustomplot.cpp 

HEADERS += mainwindow.h \ 
    QCustomPlot/qcustomplot.h 

FORMS += mainwindow.ui 

CONFIG += mobility 
MOBILITY = 
+0

請粘貼更多的錯誤信息。哪個文件試圖包含qcustomplot.h? – lpapp

+0

我是新來的stackoverflow沒有足夠的'聲譽'莫名其妙,我不能添加評論@Shea Belsky。我按照他的指示解決了問題。我想他可能會忘記他的回答中的一步。以下是我們按照他的步驟一步一步:第1步:打開包含qcustomplot項目的***。ui文件。第2步:右鍵單擊qcustomplot項目並點擊「推動的小工具」!第3步:雙擊QCustomPlot的路徑,然後從../../customplot中將其更改爲QCustomPlot/qcustomplot.cpp。就像這樣: (https://i.stack.imgur.com/yY9Am.png)最後,t – NoSuchFile

回答

2

你有似有不妥:

#include "../../qcustomplot.h" 

既然你不將QCustomPlot文件夾添加到您的INCLUDEPATH,你會需要包括文件如下:

#include "QCustomPlot/qcustomplot.h" 

或者,您可以更改INCLUDEPATH如下:

INCLUDEPATH += $$QT_PROJECT_DIR/QCustomPlot/ 

然後你可以包括頭沒有難看../../相對引用如下:

#include "qcustomplot.h" 

這是爲了避免這樣的相對包括在源極路徑和經驗法則頭文件本身,因爲結構可以在任何時候改變,或在不同的機器上可能會不同,等等。通過構建系統和包含路徑可以更好地解決問題。

+0

我必須包含路徑,因爲自動生成的文件總是創建我顯示在我的問題。 – Phat

+0

@Phataas:當然。 – lpapp

0

我遇到了同樣的問題,並解決了它。

這是由xxx.ui中qcustomplot對象的路徑引起的。

步驟1:打開包含qcustomplot項目的***.ui文件。

第2步:右鍵單擊qcustomplot項目

第3步:雙擊QCustomPlot的路徑,然後將其從../../customplot更改爲QCustomPlot/qcustomplot.cpp

最後,ui_***.h的標題可以自動包含QCustomPlot/qcustomplot.cpp而不是../../qcustomplot.h

我的母語不是英語。如果您在我的回覆中發現語法錯誤,請通知我。讓我糾正它。

相關問題