2014-12-09 2 views
0

Я пытаюсь настроить среду для перекрестной компиляции моих проектов с ubuntu на windows. Оглядываясь, мне удалось скомпилировать qt через mxe, теперь проблема в том, что я не могу заставить его работать внутри qtcreator. специфичен, я добавил в закладки QtVersionsetup комплект qtcreator для кросс-компиляции (mxe)

/home/user_name/mxe/usr/i686-w64-mingw32.static/qt5/bin/qmake 

, который имеет следующие атрибуты

Name: Qt 5.4.0 (qt5) 
ABI: x86-windows-unknown-pe-32bit 
Source: /home/snake91/mxe/usr/i686-w64-mingw32.static/qt5 
mkspec: win32-g++ 
qmake: /home/snake91/mxe/usr/i686-w64-mingw32.static/qt5/bin/qmake 
Version: 5.4.0 
QMAKE_SPEC linux-g++ 
QMAKE_VERSION 3.0 
QMAKE_XSPEC win32-g++ 
QT_HOST_BINS /home/snake91/mxe/usr/i686-w64-mingw32.static/qt5/bin 
QT_HOST_DATA /home/snake91/mxe/usr/i686-w64-mingw32.static/qt5 
QT_HOST_LIBS /home/snake91/mxe/usr/i686-w64-mingw32.static/qt5/lib 
QT_HOST_PREFIX /home/snake91/mxe/usr/i686-w64-mingw32.static/qt5 
QT_INSTALL_ARCHDATA /home/snake91/mxe/usr/i686-w64-mingw32.static/qt5 
QT_INSTALL_BINS /home/snake91/mxe/usr/i686-w64-mingw32.static/qt5/bin 
QT_INSTALL_CONFIGURATION /home/snake91/mxe/usr/i686-w64-mingw32.static/qt5/etc/xdg 
QT_INSTALL_DATA /home/snake91/mxe/usr/i686-w64-mingw32.static/qt5 
QT_INSTALL_DEMOS /home/snake91/mxe/usr/i686-w64-mingw32.static/qt5/examples 
QT_INSTALL_DOCS /home/snake91/mxe/usr/i686-w64-mingw32.static/qt5/doc 
QT_INSTALL_EXAMPLES /home/snake91/mxe/usr/i686-w64-mingw32.static/qt5/examples 
QT_INSTALL_HEADERS /home/snake91/mxe/usr/i686-w64-mingw32.static/qt5/include 
QT_INSTALL_IMPORTS /home/snake91/mxe/usr/i686-w64-mingw32.static/qt5/imports 
QT_INSTALL_LIBEXECS /home/snake91/mxe/usr/i686-w64-mingw32.static/qt5/bin 
QT_INSTALL_LIBS /home/snake91/mxe/usr/i686-w64-mingw32.static/qt5/lib 
QT_INSTALL_PLUGINS /home/snake91/mxe/usr/i686-w64-mingw32.static/qt5/plugins 
QT_INSTALL_PREFIX /home/snake91/mxe/usr/i686-w64-mingw32.static/qt5 
QT_INSTALL_QML /home/snake91/mxe/usr/i686-w64-mingw32.static/qt5/qml 
QT_INSTALL_TESTS /home/snake91/mxe/usr/i686-w64-mingw32.static/qt5/tests 
QT_INSTALL_TRANSLATIONS /home/snake91/mxe/usr/i686-w64-mingw32.static/qt5/translations 
QT_SYSROOT 
QT_VERSION 5.4.0 

Я пытался добавить все файлы в каталоге, ../mxe/usr/bin компилятором, но я всегда получаю тот же msg: «Компилятор xxxxxx не может создать код для этой версии QT» Обратите внимание, что я просто дал make qt5 без аргументов ...

ps, ​​конечно, я установил «новую» версию qt также на вкладке «Набор»

ответ

2

Открыть QtCreator и перейти к Tools->Options->Build&Run->Compilers меню, а затем изменить значение ABI по умолчанию установлен соответствующий компилятор, что вы видите в выводе спецификации из набора инструментов: x86-неизвестно-неизвестную-32bit в x86- окна - неизвестен- pe -32bit.

+0

Ваш ответ немного плотный ИМХО. – gsamaras

+0

Вы должны указать правильную версию [ABI] (http://en.wikipedia.org/wiki/Application_binary_interface), когда вы добавляете новую инструментальную цепочку в Qt Creator, как вы можете видеть на [шаг 5 документа _Adding Compilers_] (http: //doc.qt.io/qtcreator/creator-tool-chains.html). В приведенном выше вопросе причиной ошибки является неправильное значение для версии ABI. – dursunturan

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