Собственно ради чего я и залез во втором часу ночи и с перерывом в 3 месяца :)
Задача:
Хочу писать на QT под Windows не в QTCreator+Mingw, а с использованием Visual C/C++ (в моем случаи Express Edition -- так сказать: "Я, конечно, не херувим. У меня нет крыльев, но я чту Уголовный кодекс. Это моя слабость." (с) Остап Бендер
Решение:
0) Попытка по учебнику
0.1)
D:\Qt\4.8.3\bin\qmake.exe -t vc
Unable to generate makefile for: D:/VisualC++Projects/securesocketclient4/src/securesocketclient.pro
0.2)
D:\QtSDK\Desktop\Qt\4.7.3\msvc2008\bin\qmake.exe -t vc
WARNING: Generator: MSVC.NET: Found more than one version of Visual Studio, but none in your path! Fallback to low
on (MSVC.NET 2010 (10.0), MSVC.NET 2010 Express Edition (10.0))
WARNING: Generator: MSVC.NET: Unknown version (160) of MSVC detected for .vcproj
WARNING: Generator: MSVC.NET: Unknown version (160) of MSVC detected for .vcproj
Unable to generate makefile for: D:/VisualC++Projects/securesocketclient4/src/securesocketclient.pro
Значит пойдем длинным путем...
1) Для начала качаем Visual C/C++ http://www.microsoft.com/visualstudio/rus/downloads.
Кликаем на раскрывающийся раздел Visual C++ 2010 Express и качаем (рекомендую ставить английскую версию http://go.microsoft.com/?linkid=9709949, а не русскую http://go.microsoft.com/?linkid=9709957, так как после установки русской студии меня чуть вырвало) веб установщик. Он в свою очередь выкачает еще кучу мегазов-варезов так что будьте внимательны с платным трафиком -- жаба задушит.
Почему не Visual C/C++ 2012 -- QT в настоящее время не поддерживает сборки для 2012 -- сейчас только 2008 и 2010.
2) Далее идем на http://qt-project.org/downloads и вы Qt libraries 4.8.3 for Windows (VS 2010, 235 MB), качаем и устанавливаем.
3) Создаем новый проект securesocketclient4 в Visual C/C++
Компилируем, запускаем, дебажим и внимательно смотрим на переменную argc
она равна 1
4) Расчищаем проект от лишнего мусора
Было
Стало
Проверяем переменную argc (почему я это делаю постоянно вы поймете чуть позже %( ) -- она все еще равна 1
5) Создаем директорию src в "D:\VisualC++Projects\securesocketclient4\, выбираем для тестов сборки пример D:\Qt\4.8.3\examples\network\securesocketclient\ и копируем его в директорию "D:\VisualC++Projects\securesocketclient4\src\"
sslerrors ui │ 3750│
sslclient ui │ 5588│
sslclient h │ 2892│
sslclient cpp│ 7976│
securesocketclient qrc│ 102│
securesocketclient pro│ 767│
securesocketclient desktop│ 257│
main cpp│ 2551│
encrypted png│ 750│
certificateinfo ui │ 2486│
certificateinfo h │ 2597│
certificateinfo cpp│ 4669│
удаляем старые (созданные визардом) и засыпаем все новые (скопированные из директории с примерами) файлы в проект, компилим и наслаждаемся ошибками
------ Build started: Project: securesocketclient4, Configuration: Debug Win32 ------
sslclient.cpp
d:\visualc++projects\securesocketclient4\src\certificateinfo.h(44): fatal error C1083: Cannot open include file: 'QtGui/QDialog': No such file or directory
main.cpp
d:\visualc++projects\securesocketclient4\src\main.cpp(41): fatal error C1083: Cannot open include file: 'QApplication': No such file or directory
certificateinfo.cpp
d:\visualc++projects\securesocketclient4\src\certificateinfo.h(44): fatal error C1083: Cannot open include file: 'QtGui/QDialog': No such file or directory
Generating Code...
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========
ну что делать? идем и правим пути: правая кнопка мышки над названием проекта\выпадающее меню\Properties
уже третий час ночи -- пойду посплю :))
Задача:
Хочу писать на QT под Windows не в QTCreator+Mingw, а с использованием Visual C/C++ (в моем случаи Express Edition -- так сказать: "Я, конечно, не херувим. У меня нет крыльев, но я чту Уголовный кодекс. Это моя слабость." (с) Остап Бендер
Решение:
0) Попытка по учебнику
0.1)
D:\Qt\4.8.3\bin\qmake.exe -t vc
Unable to generate makefile for: D:/VisualC++Projects/securesocketclient4/src/securesocketclient.pro
0.2)
D:\QtSDK\Desktop\Qt\4.7.3\msvc2008\bin\qmake.exe -t vc
WARNING: Generator: MSVC.NET: Found more than one version of Visual Studio, but none in your path! Fallback to low
on (MSVC.NET 2010 (10.0), MSVC.NET 2010 Express Edition (10.0))
WARNING: Generator: MSVC.NET: Unknown version (160) of MSVC detected for .vcproj
WARNING: Generator: MSVC.NET: Unknown version (160) of MSVC detected for .vcproj
Unable to generate makefile for: D:/VisualC++Projects/securesocketclient4/src/securesocketclient.pro
Значит пойдем длинным путем...
1) Для начала качаем Visual C/C++ http://www.microsoft.com/visualstudio/rus/downloads.
Кликаем на раскрывающийся раздел Visual C++ 2010 Express и качаем (рекомендую ставить английскую версию http://go.microsoft.com/?linkid=9709949, а не русскую http://go.microsoft.com/?linkid=9709957, так как после установки русской студии меня чуть вырвало) веб установщик. Он в свою очередь выкачает еще кучу мегазов-варезов так что будьте внимательны с платным трафиком -- жаба задушит.
Почему не Visual C/C++ 2012 -- QT в настоящее время не поддерживает сборки для 2012 -- сейчас только 2008 и 2010.
2) Далее идем на http://qt-project.org/downloads и вы Qt libraries 4.8.3 for Windows (VS 2010, 235 MB), качаем и устанавливаем.
3) Создаем новый проект securesocketclient4 в Visual C/C++
Компилируем, запускаем, дебажим и внимательно смотрим на переменную argc
она равна 1
4) Расчищаем проект от лишнего мусора
Было
Стало
Проверяем переменную argc (почему я это делаю постоянно вы поймете чуть позже %( ) -- она все еще равна 1
5) Создаем директорию src в "D:\VisualC++Projects\securesocketclient4\, выбираем для тестов сборки пример D:\Qt\4.8.3\examples\network\securesocketclient\ и копируем его в директорию "D:\VisualC++Projects\securesocketclient4\src\"
sslerrors ui │ 3750│
sslclient ui │ 5588│
sslclient h │ 2892│
sslclient cpp│ 7976│
securesocketclient qrc│ 102│
securesocketclient pro│ 767│
securesocketclient desktop│ 257│
main cpp│ 2551│
encrypted png│ 750│
certificateinfo ui │ 2486│
certificateinfo h │ 2597│
certificateinfo cpp│ 4669│
удаляем старые (созданные визардом) и засыпаем все новые (скопированные из директории с примерами) файлы в проект, компилим и наслаждаемся ошибками
------ Build started: Project: securesocketclient4, Configuration: Debug Win32 ------
sslclient.cpp
d:\visualc++projects\securesocketclient4\src\certificateinfo.h(44): fatal error C1083: Cannot open include file: 'QtGui/QDialog': No such file or directory
main.cpp
d:\visualc++projects\securesocketclient4\src\main.cpp(41): fatal error C1083: Cannot open include file: 'QApplication': No such file or directory
certificateinfo.cpp
d:\visualc++projects\securesocketclient4\src\certificateinfo.h(44): fatal error C1083: Cannot open include file: 'QtGui/QDialog': No such file or directory
Generating Code...
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========
ну что делать? идем и правим пути: правая кнопка мышки над названием проекта\выпадающее меню\Properties
выбираем в комбо Configuration установить All Configuration (если не сделать сразу, то потом напрыкаетесь)
В меню Configuration Properties\VC++ Directories\ добавляем в переменные
Include Directories D:\Qt\4.8.3\include;D:\Qt\4.8.3\include\QtGui
чтобы получилось что-то вроде того:
$(VCInstallDir)include;$(VCInstallDir)atlmfc\include;$(WindowsSdkDir)include;$(FrameworkSDKDir)\include;D:\Qt\4.8.3\include;D:\Qt\4.8.3\include\QtGui
и
Library Directories
уже третий час ночи -- пойду посплю :))
Комментариев нет:
Отправить комментарий