Russian Qt Forum
Ноябрь 22, 2024, 18:14 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Qt5, сборка ANGLE: неопределён макрос D3DCOMPILER_DLL  (Прочитано 11584 раз)
lit-uriy
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 3880


Просмотр профиля WWW
« : Июнь 22, 2013, 21:20 »

Впервые попытался собрать Qt 5 по инструкции Building Qt 5 from Git
Версия Qt соответствует SHA1:8732a4c5cd6cc970f0d27c4ad5cef3a2471b7856 (stable)
Версия qtbase: e97c37a37ac27f9ab901e974f0a882e81ffd571d  (stable)

В данный момент в PATH есть:
C:\Programs\MinGW\4.7_x32\bin;
C:\Programs\Perl\bin;
C:\Programs\Python27;
C:\WINDOWS\System32

Direct X SDK установлен, соответствующая переменная есть:
DXSDK_DIR = C:\Program Files\Microsoft DirectX SDK (June 2010)\

Каталог в которой осуществляется сборка:
D:\build\QtGit\Qt_5_main\qt5\

Каталог с исходниками:
I:\disk_L\QtGit\Qt_5_main\qt5\

конфигурирование прошло успешно:
I:\disk_L\QtGit\Qt_5_main\qt5\configure -developer-build -debug-and-release -opensource -nomake examples -nomake tests -confirm-license

на много грабель наступил, одну ни как не могу разрулить. Сборка ANGLE не удаётся.
Код
DOS
...qtbase\src\3rdparty\angle\src\libGLESv2\renderer\Renderer.cpp:58:38: error: 'D3DCOMPILER_DLL' was not declared in this scope
...qtbase\src\3rdparty\angle\src\libGLESv2\renderer\Renderer.cpp:121:5: error: 'pD3DCompile' was not declared in this scope
 
(многоточки я подрисовал вместо корня исходников)
Я не нашёл упоминания D3DCOMPILER_DLL нигде кроме собственно Renderer.cpp

кто-нибудь знает как это лечить?
Записан

Юра.
lit-uriy
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 3880


Просмотр профиля WWW
« Ответ #1 : Июнь 25, 2013, 22:28 »

Up
Записан

Юра.
Mikhail
Программист
*****
Online Online

Сообщений: 587


Просмотр профиля
« Ответ #2 : Июль 06, 2013, 17:52 »

Вообще то надо полностью установить Direct X SDK.
Наличие DXSDK_DIR еще ни о чем не говорит.

Правда Angle собранный в процессе сборки Qt у меня нерабочим оказался.
Angle собрал отдельно из исходников с http://code.google.com/p/angleproject/ и по их инстукции. заменил этими библиотеками и все пошло.
Записан
lit-uriy
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 3880


Просмотр профиля WWW
« Ответ #3 : Июль 06, 2013, 20:42 »

>полностью установить Direct X SDK
а что значит полностью? Я не представляю как можно установить НЕ полностью. Обычный мастер установки, щёлкам всё время "далее" и всё.
Записан

Юра.
Mikhail
Программист
*****
Online Online

Сообщений: 587


Просмотр профиля
« Ответ #4 : Июль 07, 2013, 09:13 »

Ну если все этапы пройдены и мастер сказал, что DirectX установлен то очевидно все в порядке.
Установке мешают redist файлы msvc2010.
Для проверки установки и работоспособности DirectX предлагаю скачать и установить откомпилированную Qt 5.1.0 без OpenGL которая должна работать через Angle.
Если запущенный через qmlscene файл qml с Quick2 работает, то я считаю, что DirectX установлен полностью  и Angle должен собраться.
Записан
lit-uriy
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 3880


Просмотр профиля WWW
« Ответ #5 : Июль 07, 2013, 14:52 »

>>скачать и установить откомпилированную Qt 5.1.0 без OpenGL
А как этот факт отличить
У меня, до собственно ручной сборки Qt 5, уже была установлена Qt 5.0.2 (до сих пор установлена), та что уже с креатором сразу идёт, но я не нашёл в ней исходников, только бинари.
Записан

Юра.
lit-uriy
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 3880


Просмотр профиля WWW
« Ответ #6 : Июль 07, 2013, 14:56 »

попробовал создать в креаторе проект QtQuik2 и запустить. Появилось окошко с надписью "Hello Word".
Однако в окошко вывода QML Scene пишутся предупреждения:
Цитировать
Запускается C:\Programs\Qt_5.0.2\5.0.2\mingw47_32\bin\qmlscene.exe D:/Temp/5/test/test.qml
QOpenGLShader::link: "(82,20): warning X3206: implicit truncation of vector type
(83,21): warning X3206: implicit truncation of vector type
(84,21): warning X3206: implicit truncation of vector type
(85,22): warning X3206: implicit truncation of vector type
(86,18): warning X3206: implicit truncation of vector type

"
C:\Programs\Qt_5.0.2\5.0.2\mingw47_32\bin\qmlscene.exe завершился с кодом 0
Записан

Юра.
lit-uriy
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 3880


Просмотр профиля WWW
« Ответ #7 : Июль 10, 2013, 14:02 »

нашёл странную запись в файле \qtbase\src\angle\src\common\common.pri
Код
C++ (Qt)
   msvc {
       # Unfortunately MinGW cannot use the DirectX headers from the DX SDK because d3d11shader.h uses
       # buffer annotation macros (eg: __out, __in) which are not defined in the MinGW copy of
       # specstrings_strict.h
       INCLUDEPATH += $$DXINC_DIR
 
       # Similarly we want the MinGW linker to use the import libraries shipped with the compiler
       # instead of those from the SDK which cause a crash on startup.
       LIBS += -L\"$$DXLIB_DIR\"
   }
почему в ней условие msvc? С MinGW работать чтоли не будет?
Записан

Юра.
twp
Гость
« Ответ #8 : Июль 10, 2013, 14:07 »

да, mingw не соберет, если указать параметр -angle-d3d11 при конфигурировании
Записан
lit-uriy
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 3880


Просмотр профиля WWW
« Ответ #9 : Июль 13, 2013, 23:54 »

>если указать параметр -angle-d3d11 при конфигурировании
у меня такого параметра нет (см. первое сообщение).

Интнрнсно как разработчики собирают Qt5 c MinGW.
Записан

Юра.
alex312
Хакер
*****
Offline Offline

Сообщений: 606



Просмотр профиля
« Ответ #10 : Июль 14, 2013, 10:50 »

Интнрнсно как разработчики собирают Qt5 c MinGW.
Без Angle, все официальные сборки.
Записан
lit-uriy
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 3880


Просмотр профиля WWW
« Ответ #11 : Июль 14, 2013, 11:10 »

Хм, а как собрать Qt5 вообще?

без Direct X у меня было такое предупреждение:
Цитировать
WARNING: Using OpenGL ES 2.0 without ANGLE.
Specify -opengl desktop to use Open GL.
The build will most likely fail.
т.е. "без ANGLE сборка, скорее всего, не удастся"

Записан

Юра.
twp
Гость
« Ответ #12 : Июль 18, 2013, 19:00 »

а если указать в configure опцию -opengl desktop, как в ворнинге написано?
Записан
lit-uriy
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 3880


Просмотр профиля WWW
« Ответ #13 : Июль 18, 2013, 20:20 »

>>а если указать в configure опцию -opengl desktop, как в ворнинге написано?
так я ещё не пробовал, т.к. настораживает предупреждение.

П.С.
извиняюсь за задержку с ответом
Записан

Юра.
lit-uriy
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 3880


Просмотр профиля WWW
« Ответ #14 : Июль 20, 2013, 21:42 »

попробовал  -opengl desktop
В данный момент собирается, уже собраны несколько библиотек, в том числе:
Qt5Core.dll
Qt5Gui.dll
Qt5Widgets.dll

посмотрю чем дело кончится.
Записан

Юра.
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.187 секунд. Запросов: 23.