Compilation testers needed

Having trouble installing or compiling FreeCAD? Get help here.
Forum rules
Be nice to others! Respect the FreeCAD code of conduct!
User avatar
-alex-
Veteran
Posts: 1861
Joined: Wed Feb 13, 2019 9:42 pm
Location: France

Re: Compilation testers needed

Post by -alex- »

chennes wrote: Tue Nov 01, 2022 10:26 pm you need to install the "qt5webengine-dev" package (or its equivalent in your OS of choice)
Thank you, I'm struggling to find which package is missing. I guess everything needed is already installed:

Code: Select all

pi@raspberrypi:~ $ apt-cache policy *qt5*webengine*
libqt5webengine-data:
  Installé : 5.15.2+dfsg-3
  Candidat : 5.15.2+dfsg-3
 Table de version :
 *** 5.15.2+dfsg-3 500
        500 http://deb.debian.org/debian bullseye/main arm64 Packages
        500 http://deb.debian.org/debian bullseye/main armhf Packages
        100 /var/lib/dpkg/status
python3-pyqt5.qtwebengine:
  Installé : (aucun)
  Candidat : 5.15.2-2
 Table de version :
     5.15.2-2 500
        500 http://deb.debian.org/debian bullseye/main arm64 Packages
libqt5webenginewidgets5:
  Installé : 5.15.2+dfsg-3
  Candidat : 5.15.2+dfsg-3
 Table de version :
 *** 5.15.2+dfsg-3 500
        500 http://deb.debian.org/debian bullseye/main arm64 Packages
        100 /var/lib/dpkg/status
python3-pyqt5.qtwebengine-dbg:
  Installé : (aucun)
  Candidat : 5.15.2-2
 Table de version :
     5.15.2-2 500
        500 http://deb.debian.org/debian bullseye/main arm64 Packages
libqt5webengine5:
  Installé : 5.15.2+dfsg-3
  Candidat : 5.15.2+dfsg-3
 Table de version :
 *** 5.15.2+dfsg-3 500
        500 http://deb.debian.org/debian bullseye/main arm64 Packages
        100 /var/lib/dpkg/status
libqt5webenginecore5:
  Installé : 5.15.2+dfsg-3
  Candidat : 5.15.2+dfsg-3
 Table de version :
 *** 5.15.2+dfsg-3 500
        500 http://deb.debian.org/debian bullseye/main arm64 Packages
        100 /var/lib/dpkg/status
sorry for french locales

hummm, my bad maybe. There is qtwebengine5-dev which is maybe a good candidate:

Code: Select all

pi@raspberrypi:~ $ apt-cache policy *webengine*dev*
qtwebengine5-dev:
  Installé : (aucun)
  Candidat : 5.15.2+dfsg-3
 Table de version :
     5.15.2+dfsg-3 500
        500 http://deb.debian.org/debian bullseye/main arm64 Packages
qtwebengine5-private-dev:
  Installé : (aucun)
  Candidat : 5.15.2+dfsg-3
 Table de version :
     5.15.2+dfsg-3 500
        500 http://deb.debian.org/debian bullseye/main arm64 Packages
libkf5webengineviewer-dev:
  Installé : (aucun)
  Candidat : 4:20.08.3-5
 Table de version :
     4:20.08.3-5 500
        500 http://deb.debian.org/debian bullseye/main arm64 Packages
qtwebengine5-dev-tools:
  Installé : (aucun)
  Candidat : 5.15.2+dfsg-3
 Table de version :
     5.15.2+dfsg-3 500
        500 http://deb.debian.org/debian bullseye/main arm64 Packages

Edit: qtwebengine5-dev was the missing one, everything is fine now. That's compiling... slowly on Raspberry PI4 ;-)
Actually I was already compiling Linkstage3 with make -j3. So I'm compiling FC PR7647 in paralell with... make -j1 :|
Il will report tomorrow :lol:
@user1234 , thank you anyway ;)
Last edited by -alex- on Tue Nov 01, 2022 11:34 pm, edited 1 time in total.
user1234
Veteran
Posts: 3512
Joined: Mon Jul 11, 2016 5:08 pm

Re: Compilation testers needed

Post by user1234 »

-alex- wrote: Tue Nov 01, 2022 11:10 pm I'm struggling to find which package is missing.
Debian will be similar like Raspian, then libqt5webengine5, maybe also libqt5webenginewidgets5 (optional, when it does not work).

When it compiles and it does not run properly, then maybe some python bindings are missing, like python3-pyside2.qtwebengine or python3-pyside2.qtwebenginewidgets. But it must not be the case, i do not know if in the sources it is used.

Greetings
user1234

edit: color else hard to read
wmayer
Founder
Posts: 20319
Joined: Thu Feb 19, 2009 10:32 am
Contact:

Re: Compilation testers needed

Post by wmayer »

Another Qt5/Qt6 compatible change: git commit ec553a9292
hko
Posts: 108
Joined: Thu Apr 23, 2020 10:44 pm

Re: Compilation testers needed

Post by hko »

chennes wrote: Tue Nov 01, 2022 10:26 pm @-alex- I presume you are getting that error when trying to compile against Qt5, not Qt6, right? If that is the case, you need to install the "qt5webengine-dev" package (or its equivalent in your OS of choice) using your system package manager.
What has not been made clear is that commit 2f7be9e782b080d774dbba1b826333e43a97708d not only adds support for building against Qt6, it also covertly changes Qt5 support. The build used to support Qt WebKit in addition to Qt WebEngine but now supports only Qt WebEngine. I don't have a problem with that since qt5webengine-dev package is available in the OS that I use but it could have been communicated in the commit message and the first message of this thread.
User avatar
-alex-
Veteran
Posts: 1861
Joined: Wed Feb 13, 2019 9:42 pm
Location: France

Re: Compilation testers needed

Post by -alex- »

-alex- wrote: Tue Nov 01, 2022 11:10 pm qtwebengine5-dev was the missing one, everything is fine now. That's compiling...
That's ok now, it compiles fine with Qt5.

Code: Select all

OS: Debian GNU/Linux 11 (bullseye) (LXDE/LXDE-pi)
Word size of FreeCAD: 64-bit
Version: 0.21.30767 +2 (Git)
Build type: Unknown
Branch: pr/7647
Hash: c472df9cb01ec16596773e30dfbb7e3a1aaa765f
Python 3.9.2, Qt 5.15.2, Coin 4.0.0, Vtk 7.1.1, OCC 7.5.1
Locale: French/France (fr_FR)
wmayer
Founder
Posts: 20319
Joined: Thu Feb 19, 2009 10:32 am
Contact:

Re: Compilation testers needed

Post by wmayer »

chennes wrote: Tue Nov 01, 2022 2:26 pm Only a few operating systems seem to be packaging these - Qt themselves encourage installing using pip (which of course makes life difficult in the cMake file, but we've got some workarounds in there).
I have found this list of source and binary releases: https://download.qt.io/official_release ... n/pyside6/
It shouldn't be too difficult to build the shiboken6/PySide6 binaries with the local Qt version.
User avatar
babaroga
Posts: 180
Joined: Sun Aug 14, 2016 6:52 pm
Location: Banja Luka, Republic of Srpska, Bosnia and Herzegovina

Re: Compilation testers needed

Post by babaroga »

On Manjaro, it compile just fine with Qt5.

Code: Select all

[code]
OS: Manjaro Linux (KDE/plasma)
Word size of FreeCAD: 64-bit
Version: 0.21.30828 (Git)
Build type: Unknown
Branch: master
Hash: 860ce0a78e386c8a83c0835e6ff80454935763e5
Python 3.10.8, Qt 5.15.6, Coin 4.0.1, Vtk 9.1.0, OCC 7.5.3
Locale: English/United States (en_US)
Installed mods: 
  * Manipulator 1.4.9
  * Render 2022.2.0
  * fasteners 0.4.21
  * Assembly4 0.12.4
  * A2plus 0.4.60
  * sheetmetal 0.2.58
  * InventorLoader 1.3.0
  * Curves 0.5.12
  * kicadStepUpMod 10.16.5
  * A2plus.backup1666268980.8677702 0.4.58 (Disabled)
[/code]
waitman
Posts: 6
Joined: Sun Nov 06, 2022 12:33 am
Contact:

Re: Compilation testers needed

Post by waitman »

Compiles ok on FreeBSD 13.1 (but also w/ PR #7728)
I can try Qt6 when I have some more time.

Code: Select all

AboutImage=freecadabout
AppDataSkipVendor=true
AppHomePath=/usr/home/waitman/Projects/FreeCAD-pr7647-src/build/
AppIcon=freecad
AppTempPath=/tmp/
BinPath=/usr/home/waitman/Projects/FreeCAD-pr7647-src/build/bin/
BuildRepositoryURL=Unknown
BuildRevision=30769 (Git)
BuildRevisionBranch=pr/7647
BuildRevisionDate=2022/10/30 00:20:46
BuildRevisionHash=c472df9cb01ec16596773e30dfbb7e3a1aaa765f
BuildVersionMajor=0
BuildVersionMinor=21
Console=1
CopyrightInfo=© Juergen Riegel, Werner Mayer, Yorik van Havre and others 2001-2022
FreeCAD is free and open-source software licensed under the terms of LGPL2+ license.
FreeCAD wouldn't be possible without FreeCAD community.
  #####                 ####  ###   ####  
  #                    #      # #   #   # 
  #     ##  #### ####  #     #   #  #   # 
  ####  # # #  # #  #  #     #####  #   # 
  #     #   #### ####  #    #     # #   # 
  #     #   #    #     #    #     # #   #  ##  ##  ##
  #     #   #### ####   ### #     # ####   ##  ##  ##


Debug=0
DocPath=/usr/home/waitman/Projects/FreeCAD-pr7647-src/build/doc/
ExeName=FreeCAD
ExeVendor=FreeCAD
ExeVersion=0.21
LoggingConsole=1
MaintainerUrl=http://www.freecad.org/wiki/Main_Page
PythonSearchPath=/usr/local/lib/python39.zip:/usr/local/lib/python3.9:/usr/local/lib/python3.9/lib-dynload
RunMode=Cmd
SplashAlignment=Bottom|Left
SplashInfoColor=#c8c8c8
SplashInfoPosition=15.210
SplashScreen=freecadsplash
SplashTextColor=#ffffff
StartWorkbench=StartWorkbench
UserAppData=/home/waitman/.local/share/FreeCAD/
UserCachePath=/home/waitman/.cache/FreeCAD/Cache/
UserConfigPath=/home/waitman/.config/FreeCAD/
UserHomePath=/home/waitman
UserMacroPath=/home/waitman/.local/share/FreeCAD/Macro/
wmayer
Founder
Posts: 20319
Joined: Thu Feb 19, 2009 10:32 am
Contact:

Re: Compilation testers needed

Post by wmayer »

I can try Qt6 when I have some more time.
When doing so you have to cherry-pick the four top commits of this branch: https://github.com/wwmayer/FreeCAD/commits/Port_Qt6
And you have to disable the build of TechDraw since it's not ported yet.
wmayer
Founder
Posts: 20319
Joined: Thu Feb 19, 2009 10:32 am
Contact:

Re: Compilation testers needed

Post by wmayer »

Current status of the Qt6 port

Required packages:
Additionally to the mentioned packages in https://forum.freecadweb.org/viewtopic. ... 50#p637350 these must be installed too:
  • qt6-webengine-dev-tools
  • libqt6webenginecore6-bin
In order to build PySide6 you also have to install:
  • libclang-14-dev (or the suitable package for your OS)
  • qt6-base-private-dev
  • qt6-declarative-private-dev
Now there is a somewhat weird behaviour with the webengine module. In order to load the StartPage correctly the system expects some resource files to be in ~/.FreeCAD. To fix the crash you have to run:

Code: Select all

cp /usr/share/qt6/resources/qtwebengine_resources.pak ~/.FreeCAD/
cp /usr/share/qt6/resources/qtwebengine_resources_100p.pak ~/.FreeCAD/
cp /usr/share/qt6/resources/qtwebengine_resources_200p.pak ~/.FreeCAD/
Many more commits have been pushed to master to fix several build failures. So, now it's even possible to run the self-tests but at the very end the application must be killed due to some modal dialogs coming from the Addon-Manager unit tests. Here a mechanism must be implemented that the dialog disappear automatically.

ToDo:
Unfortunately there are still a lot of old-style connects in the code base that won't work any more with Qt6 because signal or slot functions have been renamed or removed. For some reason Qt6 doesn't seem to print any warnings any more if the call of connect() has failed.
Post Reply