Russian Qt Forum

Qt => Установка, сборка, отладка, тестирование => Тема начата: arial от Март 21, 2014, 09:23



Название: Ошибка сборки 32-bit версии Qt 5 на Windows 8 64-bit компилятором msvc 2013
Отправлено: arial от Март 21, 2014, 09:23

Сразу напишу, что 64-bit версия собирается абсолютно нормально.


Собираю по официальной инструкции (http://qt-project.org/wiki/Building-Qt-5-from-Git-Russian). Во время сборки получаю сообщение:

Цитировать
Создается библиотека ..\..\..\..\plugins\platforms\qwindowsd.lib и объект ..\..\..\..\plugins\platforms\qwindowsd.exp

dlldata.obj : error LNK2001: неразрешенный внешний символ "_Accessible2_ProxyFileInfo"
dlldata.obj : error LNK2001: неразрешенный внешний символ "_AccessibleAction_ProxyFileInfo"
dlldata.obj : error LNK2001: неразрешенный внешний символ "_AccessibleApplication_ProxyFileInfo"
dlldata.obj : error LNK2001: неразрешенный внешний символ "_AccessibleComponent_ProxyFileInfo"
dlldata.obj : error LNK2001: неразрешенный внешний символ "_AccessibleEditableText_ProxyFileInfo"
dlldata.obj : error LNK2001: неразрешенный внешний символ "_AccessibleHyperlink_ProxyFileInfo"
dlldata.obj : error LNK2001: неразрешенный внешний символ "_AccessibleHypertext_ProxyFileInfo"
dlldata.obj : error LNK2001: неразрешенный внешний символ "_AccessibleImage_ProxyFileInfo"
dlldata.obj : error LNK2001: неразрешенный внешний символ "_AccessibleRelation_ProxyFileInfo"
dlldata.obj : error LNK2001: неразрешенный внешний символ "_AccessibleTable_ProxyFileInfo"
dlldata.obj : error LNK2001: неразрешенный внешний символ "_AccessibleTable2_ProxyFileInfo"
dlldata.obj : error LNK2001: неразрешенный внешний символ "_AccessibleTableCell_ProxyFileInfo"
dlldata.obj : error LNK2001: неразрешенный внешний символ "_AccessibleText_ProxyFileInfo"
dlldata.obj : error LNK2001: неразрешенный внешний символ "_AccessibleValue_ProxyFileInfo"
..\..\..\..\plugins\platforms\qwindowsd.dll : fatal error LNK1120: неразрешенных внешних элементов: 14
NMAKE : fatal error U1077: "C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\bin\link.EXE" : возвращенный код "0x4
60"
Stop.

Собираю так:

Код:
configure -developer-build -opensource -confirm-license -c++11 -nomake examples -nomake tests -plugin-sql-odbc -plugin-sql-sqlite -mp -icu -openssl OPENSSL_LIBS="-lssleay32 -llibeay32" -I C:\icu4c\include -I C:\openssl\x86\include -L C:\icu4c\lib -L C:\openssl\x86\lib

Если собирать с -no-accessibility, то сборка проходит успешно, но мне нужно с -accessibility.

Ошибка как у меня гуглится, но нигде решения нет. Может тут чем-то помогут.


Название: Re: Ошибка сборки 32-bit версии Qt 5 на Windows 8 64-bit компилятором msvc 2013
Отправлено: kambala от Март 21, 2014, 12:12
ты developer command prompt x86 открываешь?


Название: Re: Ошибка сборки 32-bit версии Qt 5 на Windows 8 64-bit компилятором msvc 2013
Отправлено: arial от Март 21, 2014, 12:21
Да.


Название: Re: Ошибка сборки 32-bit версии Qt 5 на Windows 8 64-bit компилятором msvc 2013
Отправлено: kambala от Март 21, 2014, 12:50
http://qt-project.org/forums/viewthread/23807 вот тут вроде есть какое-то решение


Название: Re: Ошибка сборки 32-bit версии Qt 5 на Windows 8 64-bit компилятором msvc 2013
Отправлено: arial от Март 21, 2014, 12:56
Да, я эту ветку видел и пробовал то, что описано в этом (http://qt-project.org/forums/viewreply/134525/) посте. Всё-равно эта ошибка вылезает. Я уже по разному пересобирать пробовал. И более ранними компиляторами, и environments чистил так, чтобы только x86 там остался. 64 - без проблем, а 32 - никак.


Название: Re: Ошибка сборки 32-bit версии Qt 5 на Windows 8 64-bit компилятором msvc 2013
Отправлено: arial от Апрель 12, 2014, 17:07
Проблема решилась принудительной установкой в файле iaccessible2.pri (https://qt.gitorious.org/qt/qtbase/source/bab494e4d046f5617d19f5fec35eeff94377c51f:src/3rdparty/iaccessible2/iaccessible2.pri) значения ARCH_SUBDIR=x86.