Hi,
I've converted our project from cmake to qbs.
It works in native environment.

I am now trying to cross compile using a sdk generated by yocto for arm.

The yocto sdk installs the Qt embedded include in:
/opt/poky/1.5+snapshot/sysroots/armv7a-vfp-neon-poky-linux-gnueabi/usr/include/qtopia
The libs in:
/opt/poky/1.5+snapshot/sysroots/armv7a-vfp-neon-poky-linux-gnueabi/usr/lib
The mkspecs in:
/opt/poky/1.5+snapshot/sysroots/armv7a-vfp-neon-poky-linux-gnueabi/usr/share/qtopia/mkspecs

The sdk installs qmake in:
/opt/poky/1.5+snapshot/sysroots/x86_64-pokysdk-linux/usr/bin/qmake
and the cross compiler in:
/opt/poky/1.5+snapshot/sysroots/x86_64-pokysdk-linux/usr/bin/arm-poky-linux-gnueabi

The sdk also provide a environment-setup-armv7a-vfp-neon-poky-linux-gnueabi 
script that sets up path and exports things like:
export 
OE_QMAKE_INCDIR_QT=/opt/poky/1.5+snapshot/sysroots/armv7a-vfp-neon-poky-linux-gnueabi//usr/include/qtopia
But I don't think it's any use for qbs.

I am now trying to configure my environment to work in a console with qbs to 
compile in native and for arm.

In a terminal in native:
I run  qbs-detect-toolchains and then qbs setup-qt /usr/bin/qmake myqt
It works fine. I can compile my project

In a terminal for arm:
I first source environment-setup-armv7a-vfp-neon-poky-linux-gnueabi then run 
qbs-detect-toolchains:
Trying to detect gcc...
Toolchain detected:
    binary: 
/opt/poky/1.5+snapshot/sysroots/x86_64-pokysdk-linux/usr/bin/arm-poky-linux-gnueabi/arm-poky-linux-gnueabi-gcc
    triplet: arm-poky-linux-gnueabi
    arch: arm
    cc: arm-poky-linux-gnueabi-gcc
    cxx: arm-poky-linux-gnueabi-g++  -march=armv7-a -mthumb-interwork 
-mfloat-abi=softfp -mfpu=neon 
--sysroot=/opt/poky/1.5+snapshot/sysroots/armv7a-vfp-neon-poky-linux-gnueabi
    ld: arm-poky-linux-gnueabi-ld  
--sysroot=/opt/poky/1.5+snapshot/sysroots/armv7a-vfp-neon-poky-linux-gnueabi

Only the arm cross compiler is detected.
Then qbs setup-qt 
/opt/poky/1.5+snapshot/sysroots/x86_64-pokysdk-linux/usr/bin/qmake:

ERROR: qbs-setup-qt: Could not determine whether Qt is a static build.

Beside running 
/opt/poky/1.5+snapshot/sysroots/x86_64-pokysdk-linux/usr/bin/qmake -query gives:
QT_INSTALL_PREFIX:/opt/poky/1.5+snapshot/sysroots/x86_64-pokysdk-linux/usr
QT_INSTALL_DATA:/opt/poky/1.5+snapshot/sysroots/x86_64-pokysdk-linux/usr
QT_INSTALL_DOCS:/opt/poky/1.5+snapshot/sysroots/x86_64-pokysdk-linux/usr/doc
QT_INSTALL_HEADERS:/opt/poky/1.5+snapshot/sysroots/x86_64-pokysdk-linux/usr/include
QT_INSTALL_LIBS:/opt/poky/1.5+snapshot/sysroots/x86_64-pokysdk-linux/usr/lib
QT_INSTALL_BINS:/opt/poky/1.5+snapshot/sysroots/x86_64-pokysdk-linux/usr/bin
QT_INSTALL_PLUGINS:/opt/poky/1.5+snapshot/sysroots/x86_64-pokysdk-linux/usr/plugins
QT_INSTALL_IMPORTS:/opt/poky/1.5+snapshot/sysroots/x86_64-pokysdk-linux/usr/imports
QT_INSTALL_TRANSLATIONS:/opt/poky/1.5+snapshot/sysroots/x86_64-pokysdk-linux/usr/translations
QT_INSTALL_CONFIGURATION:/etc/xdg
QT_INSTALL_EXAMPLES:/opt/poky/1.5+snapshot/sysroots/x86_64-pokysdk-linux/usr/examples
QT_INSTALL_DEMOS:/opt/poky/1.5+snapshot/sysroots/x86_64-pokysdk-linux/usr/demos
QMAKE_MKSPECS:/opt/poky/1.5+snapshot/sysroots/x86_64-pokysdk-linux/usr/mkspecs
QMAKE_VERSION:2.01a
QT_VERSION:4.8.5

QT_INSTALL_LIBS points to x86_64-pokysdk-linux and not 
armv7a-vfp-neon-poky-linux-gnueabi where the libs are.
I assume it's the reason qbs-setup-qt fails.

So does it mean I have to configure qbs manually for my environment?

Thanks

Raphael



_______________________________________________
QBS mailing list
[email protected]
http://lists.qt-project.org/mailman/listinfo/qbs

Reply via email to