Я присоединился к уже существующему (opensource-) проекту Qt 4, чтобы добавить некоторые функции. Проект компилируется и отлично работает на Linux Slackware с Qt 4.8.5. В качестве IDE я сначала использовал KDevelop (поставляется с Slackware), но файлы проекта Qt не поддерживаются в KDevelop (поскольку в основном он использует cmake, мне пришлось использовать make файл для импорта проекта). Теперь я хочу переключиться на Qt Creator, но заголовочные файлы в включенных (относительные) пути не распознаются. Например, файл проекта находится в файле "dir0/programs/prog1/prog1.pro", а некоторые дополнительные заголовки находятся в "dir0/gui/extra.h". "dir0/gui" добавляется к пути поиска по строке INCLUDEPATH += ../../gui
в файле проекта. Если я нахожусь над #include "extra.h"
в файле .h проекта, я всегда получаю всплывающее сообщение "extra.h: Нет такого файла или каталога".
В KDevelop не было проблем, и qmake получает его. Какая проблема Создателя (я использую 2.8, а также пробовал 3.0)
Любая помощь очень ценится: -)
Конрад
EDIT: Я просто понял, что вся основа Qt не распознается и qt-creator. Когда я набираю #include "
, заголовки, предлагаемые автозавершением, находятся либо в каталоге "/usr/include", либо в каталоге проекта. Например, я даже не могу сделать #include <QtGui>
.
что может быть проблемой здесь?
EDIT2: файл проекта также включает gui.pri и local.pri, которые также используются несколькими другими проектами. Я попытался немного сжать файлы - он все равно компилируется без проблем.
файл фактического проекта, расположенный в каталоге "dir0/programs/us_convert"
include( ../../gui.pri )
QT += xml
TARGET = us_convert
HEADERS = us_convert_gui.h \
us_convert.h \
us_convertio.h \
us_experiment.h \
us_experiment_gui.h \
us_selectbox.h \
us_intensity.h \
us_get_dbrun.h \
us_mwl_data.h
SOURCES = us_convert_gui.cpp \
us_convert.cpp \
us_convertio.cpp \
us_experiment.cpp \
us_experiment_gui.cpp \
us_selectbox.cpp \
us_intensity.cpp \
us_get_dbrun.cpp \
us_mwl_data.cpp
gui.pri, расположенный в каталоге "dir0/"
# Profile include file for applications
!include( local.pri ) error( "local.pri is missing. Copy from local.pri.template and update variables as appropriate" )
TEMPLATE = app
DESTDIR = ../../bin
MOC_DIR = ./moc
OBJECTS_DIR = ./obj
VER = 10
CONFIG += $$DEBUGORRELEASE qt thread warn
unix {
LIBS += -L../../lib -lus_gui -lus_utils
LIBS += -lcrypto
LIBS += -lqwtplot3d-qt4 -lGLU
LIBS += -L$$MYSQLDIR -lmysqlclient
DEFINES += INTEL LINUX
INCLUDEPATH += $$MYSQLPATH ../../$$QWT3D/include
INCLUDEPATH += ../../gui ../../utils $$QWTPATH/include ..
}
И local.pri, также расположенный в папке "dir0/"
DEBUGORRELEASE += debug
unix {
MYSQLPATH = /usr/include/mysql/
QWTPATH = /usr/local/qwt-5.2.2
SINGLEDIR = /usr/lib/qt/qt-solutions/qtsingleapplication/src
MYSQLDIR = /usr/include/mysql
QWT3D = /qwtplot3d-qt4/
LIBS += -L/usr/local/qwt-5.2.2/lib -lqwt
}