Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

sdk package not working (qt) #20

Closed
modjo756 opened this issue Oct 11, 2016 · 12 comments
Closed

sdk package not working (qt) #20

modjo756 opened this issue Oct 11, 2016 · 12 comments
Assignees

Comments

@modjo756
Copy link
Contributor

I have build a sdk package for sa62 (build with qt5.6.2, meta-qt5 layer krogoth branch). The sdk build fine. After install the package and configure qt creator for the kit, i have this error when i try to deploy an app :

/usr/bin/ld: cannot find -lQt5Widgets /usr/bin/ld: cannot find -lQt5Gui /usr/bin/ld: cannot find -lQt5SerialPort /usr/bin/ld: cannot find -lQt5Core /usr/bin/ld: cannot find -lGLESv2 collect2: error: ld returned 1 exit status make: *** [terminal] Error 1
selection_050

if i use the neo kit (qt 5.6.1) that i already have the app compile and i can deploy

if i compare the qt5 details of this 2 conf, i can see a difference with mkspec :
neo : linux-oe-g++
selection_048

secoA62 : linux-g++

selection_049

i don't know if is the problem ...

@graugans
Copy link
Owner

I'll dig into this when the eMMC boot works

@graugans graugans self-assigned this Oct 12, 2016
@modjo756
Copy link
Contributor Author

modjo756 commented Oct 13, 2016

After a test with udoo quad, same error --> not working. I don't know if it's an issue with meta qt5 or meta-oe ?! I will try a build with an older meta-qt5 to see ...
edit :
i take a precedent layer of qt5 but same result... i have compare qmake version of neo (qt5.6.1) and quad or seco (qt5.6.2 or 5.7) with qmake -query

selection_051

QMAKE_SPEC is different , linux-g++ for qt5.7 and linux-oe-g++ for neo --> that is good for me. I think it's a problem with mkspec ....

I obtain this error with qt5.7
selection_052

It's very bad because now we can't deploy an app in the card ! Perhaps a SDKIMAGE_FEATURES ...

@graugans
Copy link
Owner

I'll take a look into this at the weekend

@modjo756 modjo756 changed the title sdk package for A62 not working (qt) sdk package not working (qt) Oct 14, 2016
@cyrilfr
Copy link

cyrilfr commented Oct 16, 2016

Sounds like a linking issue. Did you add the modules to your .pro file?

@modjo756
Copy link
Contributor Author

modjo756 commented Oct 16, 2016

Yes, this is not the problem (i use project that works before with the older version qt5.6 or example). I think it's a problem with mkspec (use linux-g++ but we needs linux-oe-g++) ! see this comparison between an older qmake that worked with the new generated.
I have send a mail to yoctoProject and meta-freescale but not answer !
I found that but i'm not sure that is the same problem

@cyrilfr
Copy link

cyrilfr commented Oct 16, 2016

Personally I use that layer : https://github.com/meta-qt5/meta-qt5. It has nothing to do with meta-freescale.

@modjo756
Copy link
Contributor Author

Yes i use also meta-qt5, but on meta-freescale they have otavio salvador who is a maintainer of meta-qt5. If you know a mailing list, forum ... on meta-qt5 let me know please.

@modjo756
Copy link
Contributor Author

@graugans @cyrilfr i have found the problem with sdk. Now to have the deploy working, it's needed to add linux-oe-g++ to Qt mkspec, see the picture under !
qtcreatorconfig

@graugans
Copy link
Owner

Hi, what branch are you using? For krogoth a krogoth branch in meta-qt5 is recommended. It could be possible names of tools changed and so the qt5 tutorial needs an update. If you find some time to create a minimal example we can provide this and refer to it

@modjo756
Copy link
Contributor Author

Hi graugans, i use master for meta-qt5 and krogoth for the other (but this is the same result with krogoth branch, tested). The only thing that is needed to change is to add linux-oe-g++ to Qt mkspes field. I can create an example but can you preceise your ask ? Would you like a tutorial to configure QtCreator or deployment example ?

@modjo756
Copy link
Contributor Author

I close this issue, another user have tested it (mailing list meta-freescale) and works too for him.

@modjo756
Copy link
Contributor Author

modjo756 commented Nov 17, 2016

@graugans , @cyrilfr about this problem i posted on yocto mailing list this issue. Someone post me a private message that explain this :
_Problem lays in the patch 0008-configure-paths-for-target-qmake-properly.patch used in nativesdk-qtbase_git.bb.

From the patch:

+if [ "$QT_CROSS_COMPILE" = "yes" ] ; then
+ shortxspec=linux-g++
+ shortspec=linux-g++
+else
+ shortxspec=`echo $XQMAKESPEC | sed "s,^${relpath}/mkspecs/,,"`
+ shortspec=`echo $QMAKESPEC | sed "s,^${relpath}/mkspecs/,,"`
+fi

Since QT_CROSS_COMPILE then it sets the SPEC to linux-g++.

To test if you have the same problem as me.

Remove the patch from the recipe nativesdk-qtbase_git.bb and rebuild.

diff --git a/recipes-qt/qt5/nativesdk-qtbase_git.bb b/recipes-qt/qt5/nativesdk-qtbase_git.bb
index 7452648..a941c1f 100644
--- a/recipes-qt/qt5/nativesdk-qtbase_git.bb
+++ b/recipes-qt/qt5/nativesdk-qtbase_git.bb
@@ -33,7 +33,6 @@ SRC_URI += "\
 file://0005-configure-bump-path-length-from-256-to-512-character.patch \
 file://0006-QOpenGLPaintDevice-sub-area-support.patch \
 file://0007-linux-oe-g-Invert-conditional-for-defining-QT_SOCKLE.patch \
- file://0008-configure-paths-for-target-qmake-properly.patch \
 file://0009-Reorder-EGL-libraries-from-pkgconfig-and-defaults.patch \
 file://0010-Pretend-Qt5-wasn-t-found-if-OE_QMAKE_PATH_EXTERNAL_H.patch \_

In my last build i did this and this resolve the problem (no need to change QT mkspecs in qtcreator). Do you think we push this on the recipe ?

shr-project pushed a commit to meta-qt5/meta-qt5 that referenced this issue Feb 17, 2017
…ing for SDK

The patch 0008-configure-paths-for-target-qmake-properly.patch seems
to be intended for the target, not for native/nativesdk, as it breaks
the mkspec setting (sets linux-g++ instead of linux-oe-g++) by default.

This issue is also described here:
graugans/meta-udoo#20 (comment)

Signed-off-by: Frieder Schrempf <frieder.schrempf@exceet.de>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
shr-project pushed a commit to meta-qt5/meta-qt5 that referenced this issue Feb 26, 2017
…ing for SDK

The patch 0008-configure-paths-for-target-qmake-properly.patch seems
to be intended for the target, not for native/nativesdk, as it breaks
the mkspec setting (sets linux-g++ instead of linux-oe-g++) by default.

This issue is also described here:
graugans/meta-udoo#20 (comment)

Signed-off-by: Frieder Schrempf <frieder.schrempf@exceet.de>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants