2012-05-06 3 views
1

Я столкнулся с проблемой, с которой мне очень сложно справиться. Я искал все возможные сайты и много раз пробовал и провел почти 10 часов, но проблема осталась. Описаниевключая заголовки Qt в Visual Studio 2010

Проблемы:

Я использую Visual Studio 2010. Я установил Qt библиотеку:. Qt библиотеки 4.8.1 для Windows (VS 2010, 235 MB) также установлен Visual Studio Qt добавить в
Я помню, что я напечатал что-то в строке cmd (чтобы включить переменные envoirement), текст был указан в переполнении стека (теперь я потерял ссылку на эту тему и не могу ее найти).
Итак, я создал библиотеку Qt, и она сработала. Случайно я установил визуальную студию 2008, и начались проблемы.
Раньше я был в состоянии включить Qt заголовки, как:

#include <QtCore> 
#include <QtGui> 

, но теперь я должен указать полный путь, как

#include<QtCore\...> 

и QtCore отображается как папка, которая не была раньше. Это очень неудобно для меня.

Поэтому, пожалуйста, сообщите мне, что делать, чтобы решить эту проблему (нет необходимости указывать полный путь к заголовкам Qt). Буду очень благодарен!

+0

Более понимание в моей ситуации: –

+0

ОС: Windows 7. Visual Studio 2010 Ultimate. I Загрузите Qt-win-opensource-4.8.1 -vs 2010.exe (http://qt.nokia.com/downloads/windows-cpp-vs2010). Я устанавливаю его. Я получил каталог C: \ Qt \ 4.8.1. Когда я установил qt-vs-addin-1.1.10. Когда я запускал Qt для Nokia (VS2010 OpenSource) \ visual studio с Qt 4.8.1 (который был создан после установки надстройки) и получил информацию о том, что были настроены переменные varibales (установлен PATH, QDIR был установлен), но когда я проверил это путем: computer/advances properties/envoirement varibales изменений не было. –

+0

Также упоминалось, что я удалил все программы, связанные с Visual Studio 2008 (с помощью панели управления), и удалил и установил 2010, но он не отсортировал ситуацию –

ответ

2

Вам просто нужно добавить несколько каталогов для включаемых директорий

$(QTDIR)\include 
$(QTDIR)\include\QtGui 
$(QTDIR)\include\Qtcore 
$(QTDIR)\include\QtOpenGL 

Но не странно $(QTDIR)\include\Qt! Если вы получите предупреждение о прямом включают в себя проверку, не имеет include\Qt в списке

Если вы создаете проект с VS2010 надстройкой будет добавить эти каталоги для вас


Edit: комментарии становятся немного длинными, поэтому я попытаюсь объяснить.

Верхний уровень $(QTDIR)\include не имеет какого-либо включаемые файлы (.h), но это необходимо для того, другой включает в себя можно использовать пути относительно этого, например #include <QtCore/QtCore>

Qt причина самой известной в себя (но, вероятно, из-за долгие зимние ночи и потребление Aquavit) используйте файл include без расширения .h, поскольку мастер включает файл для модуля, а затем помещает его в каталог с тем же именем.

Таким образом, вы добавляете $(QTDIR)\include\QtGui в список включенных маршрутов, а затем #include <GtGui> изнутри, это, в свою очередь, загружает все 100 индивидуальных файлов .h для всех функций gui.

Тот факт, что файл и каталог имеют одинаковое имя, игнорируется препроцессором - он не знает, чтобы попытаться включить каталоги.

подсказка: См Visual studio intellisense for headers without .h для работы с заголовками и IntelliSense

+0

Как добавить эти каталоги? Итак, сделанные вами изменения будут применимы ко всем созданным проектам. Очень много времени, чтобы указать включенные каталоги для каждого проекта, который вы создаете. –

+0

Обычно я использую вкладку vc-directories в настройках проекта. VS2010 закрепил глобальные настройки своей новой системой, см. Http://social.msdn.microsoft.com/Forums/en/vcgeneral/thread/a494abb8-3561-4ebe-9eb0-6f644a679862 для подсказок –

+0

Я включил DIR, которые вы рекомендовали , но ситуация осталась такой же, как и с того места, где я начал: все равно нужно указать полный путь к файлам заголовков. Может быть, мне нужно включить некоторые переменные среды (мои расширенные опции для компьютера/env var), хотя я включил QTDIR и QTDIR \ bin (в пути), но это не повлияло –

1

this walkthrough относительно установка Qt из источник очень полезный. Это то, как я устанавливал Qt с Visual Studio в течение многих лет, и у меня никогда не было никаких проблем, включая тот, который вы упоминаете.

Вы используете qmake для создания своего .sln? Возможно, вы могли бы дать немного больше информации о своем процессе установки, и, возможно, я (или кто-то еще) может предложить дополнительную помощь.

Кроме того, я лично нашел QtWizard2010 очень простой и хорошо интегрированный способ генерации проектов Qt в Visual Studio. Возможно, это может помочь здесь.

+0

Я загрузил версию Qt, уже скомпилированную для Visual Studio 2010, мне нужно ее построить ??? Вот почему я не думаю, что мне понравилась аристократия. Для генерации sln я использую nmake, поскольку у меня есть VS 2010 Ultimate. –

Смежные вопросы