Deploy and start app at Raspberry Startup
I'm actually develloping an app on my raspberry Pi 3 I need this app to start on Rasp startup, I did not find any solutions that worked for me do you have any clue , or is there anything to do in QT t oset this up .
By the way I'm running rasbian.
There is nothing in Qt you must do extra as compared to any other .exe you want to run at startup
However, I trust u can run the app on the pi and its just the issue of running it at startup ?
I can run the app by using the RUN button in Qt I never tried to launch by using .exe cause I don't know how to do this, I mean I already looked at deplying an application but I'm not able to start from .exe is there any command that I should run ?
If I can handle that , I could launch my app by using the .exe at startup.
First you should be able to run the app outside Creator.
I assume PI OS acts like any other linux.
So you need a deployment folder with the Qt run times files. DLL/so files
section Linux GCC 32-bit and 64-bit compilers:
Pay huge attention to what dlls/so files u copy. DO NOT mix debug and release.
If the OS is not like a linux then i have no clue on how to deploy to it. :)
Debian works like a linux system so no problem from here.
In the tuto you send me I don't understand how to know which dll are needed ?
Also the tut does list the barebone needed.
Alright I'll have a look on that, many thanks .
Hi again , I'm not able to run linuxdeployqt so I managed to use ldd command to find the libraries that are needed.
Can't understand anything at what should I do , in the tutorial you send in the deployment folder there only is the .exe and a file named platforms. But when I'm using the deployment oon QT creator , I get a folder with all .o/.h/.cpp files that contains my program. I certainly forgot domething to do but don't know what.
At least when running the ldd command I got :
pi@dex:~/Desktop/Deployment $ sudo ldd SmartDevice_QT_V13 linux-vdso.so.1 (0x7edd0000) /usr/lib/arm-linux-gnueabihf/libarmmem.so (0x76f61000) libQxtCore.so.0 => /usr/local/Qxt/lib/libQxtCore.so.0 (0x76ed8000) libQxtWidgets.so.0 => /usr/local/Qxt/lib/libQxtWidgets.so.0 (0x76e18000) libqwt.so.6 => not found libQtWebKit.so.4 => /usr/lib/arm-linux-gnueabihf/libQtWebKit.so.4 (0x7539f000) libQtSql.so.4 => /usr/lib/arm-linux-gnueabihf/libQtSql.so.4 (0x75359000) libQtXmlPatterns.so.4 => /usr/lib/arm-linux-gnueabihf/libQtXmlPatterns.so.4 (0x74fb3000) libQtXml.so.4 => /usr/lib/arm-linux-gnueabihf/libQtXml.so.4 (0x74f69000) libQtGui.so.4 => /usr/lib/arm-linux-gnueabihf/libQtGui.so.4 (0x74678000) libQtNetwork.so.4 => /usr/lib/arm-linux-gnueabihf/libQtNetwork.so.4 (0x7454a000) libQtCore.so.4 => /usr/lib/arm-linux-gnueabihf/libQtCore.so.4 (0x742a9000) libpthread.so.0 => /lib/arm-linux-gnueabihf/libpthread.so.0 (0x74280000) libstdc++.so.6 => /usr/lib/arm-linux-gnueabihf/libstdc++.so.6 (0x741a4000) libm.so.6 => /lib/arm-linux-gnueabihf/libm.so.6 (0x74129000) libgcc_s.so.1 => /lib/arm-linux-gnueabihf/libgcc_s.so.1 (0x740fc000) libc.so.6 => /lib/arm-linux-gnueabihf/libc.so.6 (0x73fbb000) libz.so.1 => /lib/arm-linux-gnueabihf/libz.so.1 (0x73f93000) libXrender.so.1 => /usr/lib/arm-linux-gnueabihf/libXrender.so.1 (0x73f82000) libjpeg.so.62 => /usr/lib/arm-linux-gnueabihf/libjpeg.so.62 (0x73f2d000) libpng12.so.0 => /lib/arm-linux-gnueabihf/libpng12.so.0 (0x73efd000) libgstapp-1.0.so.0 => /usr/lib/arm-linux-gnueabihf/libgstapp-1.0.so.0 (0x73ee2000) libgstpbutils-1.0.so.0 => /usr/lib/arm-linux-gnueabihf/libgstpbutils-1.0.so.0 (0x73eae000) libgstvideo-1.0.so.0 => /usr/lib/arm-linux-gnueabihf/libgstvideo-1.0.so.0 (0x73e5f000) libgstaudio-1.0.so.0 => /usr/lib/arm-linux-gnueabihf/libgstaudio-1.0.so.0 (0x73e08000) libgstbase-1.0.so.0 => /usr/lib/arm-linux-gnueabihf/libgstbase-1.0.so.0 (0x73da0000) libgstreamer-1.0.so.0 => /usr/lib/arm-linux-gnueabihf/libgstreamer-1.0.so.0 (0x73c9c000) libgobject-2.0.so.0 => /usr/lib/arm-linux-gnueabihf/libgobject-2.0.so.0 (0x73c41000) libglib-2.0.so.0 => /lib/arm-linux-gnueabihf/libglib-2.0.so.0 (0x73b3e000) libsqlite3.so.0 => /usr/lib/arm-linux-gnueabihf/libsqlite3.so.0 (0x73a84000) libfontconfig.so.1 => /usr/lib/arm-linux-gnueabihf/libfontconfig.so.1 (0x73a42000) libX11.so.6 => /usr/lib/arm-linux-gnueabihf/libX11.so.6 (0x7392c000) /lib/ld-linux-armhf.so.3 (0x54ad2000) libaudio.so.2 => /usr/lib/arm-linux-gnueabihf/libaudio.so.2 (0x73906000) libfreetype.so.6 => /usr/lib/arm-linux-gnueabihf/libfreetype.so.6 (0x7386e000) libSM.so.6 => /usr/lib/arm-linux-gnueabihf/libSM.so.6 (0x7385f000) libICE.so.6 => /usr/lib/arm-linux-gnueabihf/libICE.so.6 (0x73841000) libXext.so.6 => /usr/lib/arm-linux-gnueabihf/libXext.so.6 (0x73822000) libdl.so.2 => /lib/arm-linux-gnueabihf/libdl.so.2 (0x7380e000) librt.so.1 => /lib/arm-linux-gnueabihf/librt.so.1 (0x737f7000) liborc-0.4.so.0 => /usr/lib/arm-linux-gnueabihf/liborc-0.4.so.0 (0x73777000) libgsttag-1.0.so.0 => /usr/lib/arm-linux-gnueabihf/libgsttag-1.0.so.0 (0x73732000) libgmodule-2.0.so.0 => /usr/lib/arm-linux-gnueabihf/libgmodule-2.0.so.0 (0x7371d000) libffi.so.6 => /usr/lib/arm-linux-gnueabihf/libffi.so.6 (0x7370d000) libpcre.so.3 => /lib/arm-linux-gnueabihf/libpcre.so.3 (0x7369a000) libexpat.so.1 => /lib/arm-linux-gnueabihf/libexpat.so.1 (0x73668000) libxcb.so.1 => /usr/lib/arm-linux-gnueabihf/libxcb.so.1 (0x73649000) libXt.so.6 => /usr/lib/arm-linux-gnueabihf/libXt.so.6 (0x735f2000) libXau.so.6 => /usr/lib/arm-linux-gnueabihf/libXau.so.6 (0x735e7000) libuuid.so.1 => /lib/arm-linux-gnueabihf/libuuid.so.1 (0x735d3000) libXdmcp.so.6 => /usr/lib/arm-linux-gnueabihf/libXdmcp.so.6 (0x735c7000)
That's all my libraries that are needed to run my app I assume but I don't know where to put this ? with all the files in my deployment folder ?
- I assume but I don't know where to put this ?
in a folder on the board. Then try to run your exe from that folder.
a deployment folder is nothing more than
a folder with Qt SO files and the exe.
Alright thank you I made a new installation of Qt and get the 5.7 version instead of the 4.8 so I'll try that when the change is effective.
See you !
Hopefully it just runs now.
Hope so too ! :)