Important: Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

Linuxdeployqt issues



  • Hi, I am trying to deploy my qt application on Linux
    I have downloaded linuxdeployqt-7-x86_64 from github
    I have followed the following steps

    Created a new folder named (deploy-with-linuxdeployqt), placed my qt app(Process_Orders) inside this folder. Then, placed an image file for icon, and a .desktop file as well.
    Desktop file looks like this

    [Desktop Entry]
    Type=Application
    Name=myfirst
    Exec=ortb
    Icon=otbb
    Comment=Edit this default file
    Categories=Qt;Utility;Documentation;
    Terminal=false
    

    After all this, my downloads folder has github downloaded file
    I cd to Downloads and run the following command

    ./linuxdeployqt-7-x86_64.AppImage ~/Documents/cpp/deploy-with-linuxdeployqt/Process_Orders

    It gave me the error that system is too new
    .
    Then I added (-unsupported-allow-new-glibc) in the command, and it gave me this output

    linuxdeployqt 6 (commit d41e234), build 724 built on 2020-07-31 15:51:47 UTC
    WARNING: Not checking glibc on the host system.
             The resulting AppDir or AppImage may not run on older systems.
             This mode is unsupported and discouraged.
             For more information, please see
             https://github.com/probonopd/linuxdeployqt/issues/340
    Not using FHS-like mode
    app-binary: "/home/kaleem/Documents/cpp/deploy-with-linuxdeployqt/Process_Orders"
    appDirPath: "/home/kaleem/Documents/cpp/deploy-with-linuxdeployqt"
    relativeBinPath: "Process_Orders"
    WARNING: Plugin "/home/kaleem/anaconda3/plugins/platformthemes/libqgtk2.so" not found, skipping
    WARNING: Plugin "/home/kaleem/anaconda3/plugins/styles/libqgtk2style.so" not found, skipping
    
    

    I want to create an executable file , when I double click it, it should run just like it ran perfectly in qt creator
    .
    Can somebody help me out?


  • Lifetime Qt Champion

    @Ahsan-Niaz said in Linuxdeployqt issues:

    I want to create an executable file

    The executable file is the one created during build.
    linuxdeployqt creates a directory containing your executable and needed libs.
    Did linuxdeployqt create such a directory and did you run the app from there?



  • I created a QT app, released it, there was a new folder of release, I opened the release folder and copied Process_Orders exe file and pasted in a newly created folder called(deploy-with-linuxdeployqt)


  • Lifetime Qt Champion

    @Ahsan-Niaz said in Linuxdeployqt issues:

    pasted in a newly created folder called(deploy-with-linuxdeployqt)

    What is this folder?
    I don't understand what you are doing.
    Please read https://github.com/probonopd/linuxdeployqt/blob/master/README.md



  • I have already gone through the link you sent. I have gone through many other websites and tutorials.

    I am going to rephrase all the steps I followed

    • In qt creator, I created an app, it ran perfectly, I selected release mode, and built it again,
    • This folder was created after I built the release mode (build-Process_Orders-Desktop_Qt_5_9_1_GCC_64bit-Release)
    • In this release folder, I had a file with the name (Process_Orders)
    • I copied this Process_Orders file,
    • created a new folder in this directory (/Documents/cpp). Named new folder as (deploy-with-linuxdeployqt)
    • Pasted (Process_Orders) file in (deploy-with-linuxdeployqt) along with an icon image and .desktop file
    • Downloaded linuxdeployqt-7-x86_64.AppImage from github(In Downloads)
    • Executed this command in terminal after changing directory to downloads (./linuxdeployqt-7-x86_64.AppImage ~/Documents/cpp/deploy-with-linuxdeployqt/Process_Orders -unsupported-allow-new-glibc)

    Where did I make mistake?


  • Lifetime Qt Champion

    @Ahsan-Niaz said in Linuxdeployqt issues:

    Where did I make mistake?

    What mistake do you mean?
    I only see some warnings.
    What looks wrong is "/home/kaleem/anaconda3/plugins/platformthemes/libqgtk2.so".
    Do you have anything related to /home/kaleem/anaconda3 in your PATH?



  • ./linuxdeployqt-7-x86_64.AppImage ~/Documents/cpp/deploy-with-linuxdeployqt/Process_Orders -unsupported-allow-new-glibc
    This command was supposed to create an exe or sh file in the Downloads folder, but it didn't. why?do I need to do something else as well? some other command to execute on the terminal? to get what I need.
    Remember, I need an exe or sh or whatever file, that runs on a double click and does according to my programming

    I followed this article (https://medium.com/swlh/how-to-deploy-your-qt-applications-to-linux-operating-system-with-linuxdeployqt-3c004a43c67a)


  • Moderators

    @Ahsan-Niaz said in Linuxdeployqt issues:

    ./linuxdeployqt-7-x86_64.AppImage ~/Documents/cpp/deploy-with-linuxdeployqt/Process_Orders -unsupported-allow-new-glibc
    This command was supposed to create an exe or sh file in the Downloads folder, but it didn't. why?

    You need to pass -appimage flag to linuxdeployqt. This way it will generate an AppImage executable with everything bundled inside.



  • Thanks for (-appimage) suggestion, yes it worked, It created (myfirst-x86_64.AppImage), but when I double click it, or right_click->run , it does not do anything, no Window pops up, nothing happens
    How should I proceed now? @sierdzio?


  • Moderators

    Run it from terminal and observe the output for any warnings or errors.



  • @sierdzio
    i ran it with (./myfirst-x86_64.AppImage) on terminal
    it gave following output
    ./myfirst-x86_64.AppImage: symbol lookup error: ./myfirst-x86_64.AppImage: undefined symbol: _ZdlPvm, version Qt_5


  • Moderators

    Well, something is wrong :D It's missing some library. Try running ldd on application executable.


Log in to reply