Windows上的QtCreator使用CodeSourcery工具链交叉编译Linux ARM

时间:2012-07-10 19:59:59

标签: qt qt-creator cross-compiling toolchain linux-toolchain

我在Windows 7机器上安装了Qt Creator,目标是OMAP3嵌入式Linux主板。我下载了目标工具链,Sourcery-G ++ Lite for Windows,还在我的Windows机器上安装了MinGW(http://www.mingw.org/)。在QT Creator中,我将CodeSourcery工具链添加为“手动”工具链,如下图所示。然后,我尝试使用此工具链构建演示Qt App'analogclock',为'analogclock'演示应用程序编辑'Projects'下的'Build Settings'。但是在第2张图片中显示的Build Settings下没有工具链。

如何使用构建选项中的Code Sourcery工具链从Qt Creator构建此演示应用程序或任何Qt应用程序?我绝对必须使用Windows来完成这个(不能使用Linux VM ...)。

我认为它可能与为目标构建Qt库有关,但我不确定这是否属实或如何在Windows上执行此操作。非常感谢您的帮助和见解。

Qt Creator CodeSourcery Toolchain

Qt Creator Build Settings

编辑:新信息 - 需要帮助配置Qt Creator:

我已经使用CodeSourcery工具链来构建Qt 4.8库而没有错误,并且在http://c2143.blogspot.com/?view=classic之后我在/ lib目录中有.so文件。现在我试图挂钩CodeSourcery编译器并将Qt 4.8构建到Qt Creator,这样我就可以为目标板构建一个示例应用程序。

我阅读了以下文章: http://doc.qt.nokia.com/qtcreator-2.4/creator-project-qmake.html http://doc.qt.nokia.com/qtcreator-2.4/creator-tool-chains.html 描述如何将Qt版本的新工具链添加到Qt Creator。请参阅附件中有关我如何配置Qt Creator的图片。我正在使用Qt Creator 2.4.1。

Qt Versions Toolchains Buildsettings

我收到错误,但下面没有太多信息粘贴......对此或我的配置有什么想法?

09:51:07: Running build steps for project analogclock...
09:51:07: Configuration unchanged, skipping qmake step.
09:51:07: Starting: "C:\QtSDK\mingw\bin\mingw32-make.exe" 
arm-none-linux-gnueabi-g++ -c -pipe -march=armv7-a -mtune=cortex-a8 -mthumb -mfpu=neon -mfloat-abi=softfp -Wa,-mimplicit-it=thumb -O2 -Wall -W -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB -DQT_SHARED -I"..\qt-4.8-src\include\QtCore" -I"..\qt-4.8-src\include\QtNetwork" -I"..\qt-4.8-src\include\QtGui" -I"..\qt-4.8-src\include" -I"." -I"c:\QtSDK\Examples\4.7\widgets\analogclock" -I"." -I"..\qt-4.8-src\mkspecs\default" -o analogclock.obj c:\QtSDK\Examples\4.7\widgets\analogclock\analogclock.cpp
arm-none-linux-gnueabi-g++ -c -pipe -march=armv7-a -mtune=cortex-a8 -mthumb -mfpu=neon -mfloat-abi=softfp -Wa,-mimplicit-it=thumb -O2 -Wall -W -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB -DQT_SHARED -I"..\qt-4.8-src\include\QtCore" -I"..\qt-4.8-src\include\QtNetwork" -I"..\qt-4.8-src\include\QtGui" -I"..\qt-4.8-src\include" -I"." -I"c:\QtSDK\Examples\4.7\widgets\analogclock" -I"." -I"..\qt-4.8-src\mkspecs\default" -o main.obj c:\QtSDK\Examples*\4.7\widgets\analogclock\main.cpp
C:\Users\pclass\Desktop\qt_creator_toolchain\qt-4.8-src\bin\moc.exe -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB -DQT_SHARED -I"..\qt-4.8-src\include\QtCore" -I"..\qt-4.8-src\include\QtNetwork" -I"..\qt-4.8-src\include\QtGui" -I"..\qt-4.8-src\include" -I"." -I"c:\QtSDK\Examples\4.7\widgets\analogclock" -I"." -I"..\qt-4.8-src\mkspecs\default" c:\QtSDK\Examples\4.7\widgets\analogclock\analogclock.h -o moc_analogclock.cpp
mingw32-make.exe: *** [moc_analogclock.cpp] Error -1073741515
09:51:09: The process "C:\QtSDK\mingw\bin\mingw32-make.exe" exited with code 2.
Error while building project analogclock (target: Desktop)
When executing build step 'Make'

2 个答案:

答案 0 :(得分:1)

首先需要Qt库作为目标。您可以使用CodeSourcery工具链构建它。然后,可以使用一些工具(qmake,moc ...)和库。

答案 1 :(得分:1)

我添加了mingw到路径,然后做了一个构建,它成功了。如果我在示例中执行'file'命令,它会给我以下内容,看起来很有希望。现在在板上试一试。

$ file analogclock analogclock:ELF 32位LSB可执行文件,ARM,版本1(SYSV),动态链接(使用共享库),用于GNU / Linux 2.6.16,未剥离

相关问题