2014-12-09 143 views
0

我想安装一个环境来交叉编译我的项目从Ubuntu到Windows。 四处寻找我设法通过mxe编译qt,现在问题是我无法在qtcreator中使用它。 作为具体的,我在QtVersion选项卡中添加设置交叉编译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目录添加的每个文件的编译器,但我总是收到同样的味精:“编译器xxxxxx不能生成此QT版本的代码” 请注意,我只是给了make qt5,没有参数...

ps当然,我也在套件选项卡中设置“新”qt版本

回答

2

打开QtCreator,去Tools->Options->Build&Run->Compilers菜单,然后安装相应的编译器的默认ABI值更改为你的工具链的规范输出中看到:x86的未知的未知,32位x86的窗口 - 未知 - pe -32bit

+0

你的答案有点密集恕我直言。 – gsamaras 2015-01-11 19:30:03

+0

您可以在Qt Creator中添加一个新的工具链,在[参考_Adding Compilers_文档的第5步](http:// http://www.wikipedia.org/wiki/Application_binary_interface)中指定正确的[ABI] //doc.qt.io/qtcreator/creator-tool-chains.html)。在上面的问题中,错误的原因是为ABI版本指定了错误的值。 – dursunturan 2015-01-16 13:30:50