QuasarApp / CQtDeployer

This project is used to deploy applications written using QML, qt or other С / С++ frameworks.
https://quasarapp.ddns.net:3031/docs/QuasarApp/CQtDeployer/latest/
GNU Lesser General Public License v3.0
570 stars 89 forks source link

Deployment on Fedora 39 #789

Closed SergeyDG29 closed 3 months ago

SergeyDG29 commented 8 months ago

Good afternoon, I tried to deploy the "qif" project on a clean Fedora 39 or Debian 11 and received an incomprehensible error when launching my program:

"No such file or directory" /home/admin/ASAMEventLog/ASAMEventLog.sh: line 37: 3811 Segmentation fault (core dumped) "$BASE_DIR/bin/ASAMEventLog" "$@"

What directory can't he find? The project was originally built on Debian 11.

photo_2023-12-27_23-37-11

EndrII commented 8 months ago

Looks as your distribution have an incompatible between itself libraries. Please describe your distribution kit, your OS, your deployment log with -verbose 3 and all your actions.

SergeyDG29 commented 8 months ago

verbose

  1. Build the qif project in Debian
  2. Launched the installer in Fedora, installed
  3. I'm trying to start but it crashes with an error What does verbose 3 do? I didn’t notice its work.

cqtdeployer -bin ASAMEventLog -name "ASAM Event Log" -qmake /home/sergey/QtNew/6.5.2/gcc_64/bin/qt-cmake qif -qifstyle QuasarDark -libDir /QLibrary -extraLibs libxcb -icon LogoASAM.png -qifLogo LogoASAM64.png -extraDataOut /home/sergey/QtProject/build-ASAMEventLog-Desktop_Qt_6_5_2_GCC_64bit-Release/DataFiles -installDirDeb /opt -verbose 3

System Information SYSTEM_INFO.TXT ASAMEventLog.sh.txt InstallationLog.txt

EndrII commented 8 months ago

Add please full tree of your distribution kit and full verbose deploy log.

SergeyDG29 commented 8 months ago

Add please full tree of your distribution kit and full verbose deploy log.

I hope it's complete hwinfo.txt VerbosLog.txt

EndrII commented 8 months ago

@SergeyDG29 I think conflict int the libxcb library. This is a low level system library, and have different segments between OS systems. Do not deploy system libraries int to your distributions. If your plugin (for example qxcb require these libraries better will be to install these libs in your system.) Or you can deploy xcb depends, for example libxenirama. Please remove extraLibs libxcb from your deployment command, and all will be fine.

SergeyDG29 commented 8 months ago

@SergeyDG29 I think conflict int the libxcb library. This is a low level system library, and have different segments between OS systems. Do not deploy system libraries int to your distributions. If your plugin (for example qxcb require these libraries better will be to install these libs in your system.) Or you can deploy xcb depends, for example libxenirama. Please remove extraLibs libxcb from your deployment command, and all will be fine.

I wouldn’t mind, but it’s already installed on the system and the program still gives an error when launched photo_2024-01-03_00-51-51

EndrII commented 8 months ago

Just make ldd of your libqxcb.so

ldd plugins/paltforms/libqxcb.so 

And found missing libraries.

This library located in the plugins/paltforms.

This bug looks as Qt bug. See the #779 issue

SergeyDG29 commented 8 months ago

Just make ldd of your libqxcb.so

ldd plugins/paltforms/libqxcb.so 

And found missing libraries.

This library located in the plugins/paltforms.

This bug looks as Qt bug. See the #779 issue

On pure Debian 11 it gave the same error as on Fedora And on Ubuntu 22

./InstallerASAM Event Log.run: error while loading shared libraries: libxcb-xinerama.so.0: cannot open shared object file: No such file or directory

from the list of dependents I did not find only libxcb-cursor.so.0, maybe the problem is its absence ldd.txt

EndrII commented 8 months ago

from the list of dependents I did not find only libxcb-cursor.so.0, maybe the problem is its absence

Yes, you can add this library into your distro using -extraLibs libxcb-cursor but, I think better will be to install these libraries into your distribution.

SergeyDG29 commented 8 months ago

from the list of dependents I did not find only libxcb-cursor.so.0, maybe the problem is its absence

Yes, you can add this library into your distro using -extraLibs libxcb-cursor but, I think better will be to install these libraries into your distribution.

In general, I put everything I could

sudo apt-get install '^libxcb.*-dev' libx11-xcb-dev libglu1-mesa-dev libxrender-dev libxi-dev libxkbcommon-dev libxkbcommon-x11-dev

the error changed to

ergey@sergey-VirtualBox:~$ /opt/ASAMEventLog//ASAMEventLog.sh "No such file or directory" Segmentation fault (core dumped)

SergeyDG29 commented 8 months ago

from the list of dependents I did not find only libxcb-cursor.so.0, maybe the problem is its absence

Yes, you can add this library into your distro using -extraLibs libxcb-cursor but, I think better will be to install these libraries into your distribution.

if it matters here is the debugging information debug.txt

EndrII commented 8 months ago

from the list of dependents I did not find only libxcb-cursor.so.0, maybe the problem is its absence

Yes, you can add this library into your distro using -extraLibs libxcb-cursor but, I think better will be to install these libraries into your distribution.

In general, I put everything I could

sudo apt-get install '^libxcb.*-dev' libx11-xcb-dev libglu1-mesa-dev libxrender-dev libxi-dev libxkbcommon-dev libxkbcommon-x11-dev

the error changed to

ergey@sergey-VirtualBox:~$ /opt/ASAMEventLog//ASAMEventLog.sh "No such file or directory" Segmentation fault (core dumped)

It seems the only option for you now is not to ship the xcb libraries with your distribution, but to install them separately.

SergeyDG29 commented 7 months ago

from the list of dependents I did not find only libxcb-cursor.so.0, maybe the problem is its absence

Yes, you can add this library into your distro using -extraLibs libxcb-cursor but, I think better will be to install these libraries into your distribution.

In general, I put everything I could

sudo apt-get install '^libxcb.*-dev' libx11-xcb-dev libglu1-mesa-dev libxrender-dev libxi-dev libxkbcommon-dev libxkbcommon-x11-dev

the error changed to

ergey@sergey-VirtualBox:~$ /opt/ASAMEventLog//ASAMEventLog.sh "No such file or directory" Segmentation fault (core dumped)

It seems the only option for you now is not to ship the xcb libraries with your distribution, but to install them separately.

If the summary of the story is interesting, as a result of debugging it was revealed that the program did not see its configuration files, why the -extraDataOut "/DataFiles" parameter did not help

EndrII commented 7 months ago

from the list of dependents I did not find only libxcb-cursor.so.0, maybe the problem is its absence

Yes, you can add this library into your distro using -extraLibs libxcb-cursor but, I think better will be to install these libraries into your distribution.

In general, I put everything I could

sudo apt-get install '^libxcb.*-dev' libx11-xcb-dev libglu1-mesa-dev libxrender-dev libxi-dev libxkbcommon-dev libxkbcommon-x11-dev

the error changed to

ergey@sergey-VirtualBox:~$ /opt/ASAMEventLog//ASAMEventLog.sh "No such file or directory" Segmentation fault (core dumped)

It seems the only option for you now is not to ship the xcb libraries with your distribution, but to install them separately.

If the summary of the story is interesting, as a result of debugging it was revealed that the program did not see its configuration files, why the -extraDataOut "/DataFiles" parameter did not help

-extraDataOut and -extraData options adds to your distribution custom files. Your Application must found this files itself.

SergeyDG29 commented 7 months ago

The configuration looks like this

-extraData "DataFiles/ProgramConfigurations.csv,DataFiles/EventTable.csv,DataFiles/ColorScheme.html,DataFiles/AnalysisTable.csv,DataFiles/siteStructureAnalysis.csv,DataFiles/AnalysisTemplate.csv,DataFiles/ColorScheme.csv" -extraDataOut "DataFiles"

but the program is from

ASAMEventLog/bin/ASAMEventLog

doesn't see these files

ASAMEventLog/DataFiles/ProgramConfigurations.csv, ASAMEventLog/DataFiles/EventTable.csv, ASAMEventLog/DataFiles/ColorScheme.html, ASAMEventLog/DataFiles/AnalysisTable.csv, ASAMEventLog/DataFiles/siteStructureAnalysis.csv, ASAMEventLog/DataFiles/AnalysisTemplate.csv, ASAMEventLog/DataFiles/ColorScheme.csv

SergeyDG29 commented 7 months ago

from the list of dependents I did not find only libxcb-cursor.so.0, maybe the problem is its absence

Yes, you can add this library into your distro using -extraLibs libxcb-cursor but, I think better will be to install these libraries into your distribution.

In general, I put everything I could

sudo apt-get install '^libxcb.*-dev' libx11-xcb-dev libglu1-mesa-dev libxrender-dev libxi-dev libxkbcommon-dev libxkbcommon-x11-dev

the error changed to

ergey@sergey-VirtualBox:~$ /opt/ASAMEventLog//ASAMEventLog.sh "No such file or directory" Segmentation fault (core dumped)

It seems the only option for you now is not to ship the xcb libraries with your distribution, but to install them separately.

If the summary of the story is interesting, as a result of debugging it was revealed that the program did not see its configuration files, why the -extraDataOut "/DataFiles" parameter did not help

-extraDataOut and -extraData options adds to your distribution custom files. Your Application must found this files itself.

When the application starts, it sees that it is running on this path /home/sergey

sergey@DtDevelopment:~$ "/home/sergey/ASAMEventLog//ASAMEventLog.sh" "Path Project: /home/sergey" "No such file or directory" Segmentation fault

Accordingly, the folder in

/home/sergey/ASAMEventLog/DataFiles/

and not visible But I can’t force the program to run along this path

/home/sergey/ASAMEventLog/

with any parameters in CQtDeployer

EndrII commented 3 months ago

@SergeyDG29 sorry for the delay in answering, but your case looks too complex to be solved remotely. Therefore, I can help you resolve this issue personally, but this option is only available as part of the Advanced Support Plan. You can purchase personal support for this tool on our Patreon.