FYI: Debian Testing build broken (due to debian packaging)
Forum rules
Be nice to others! Respect the FreeCAD code of conduct!
Be nice to others! Respect the FreeCAD code of conduct!
FYI: Debian Testing build broken (due to debian packaging)
Currently I can't build FC on Debian Testing because it pulled in python 3.10 as the default but still has Shiboken2 built against 3.9.
It's been this way for a few days - I'm afraid there's nothing we can do other than wait until they update Shiboken2.
It's been this way for a few days - I'm afraid there's nothing we can do other than wait until they update Shiboken2.
Last edited by mlampert on Sun May 01, 2022 10:24 pm, edited 1 time in total.
Re: [solved - kinda] FYI: Debian Testing build broken (due to debian packaging)
'turns out if I uninstall the package `shiboken2-dev` the build succeeds - so far I haven't found an issue with the resulting binary, marking the thread as "solved".
Re: [solved - kinda] FYI: Debian Testing build broken (due to debian packaging)
I was wrong - after more testing FC does run into problems with the different python versions. Basic functionality works though and the unit tests pass.
Re: FYI: Debian Testing build broken (due to debian packaging)
Most of FreeCAD will still work without a direct shiboken/PySide dependency. But directly getting or setting a quantity property as here won't work any more because the converter is implemented in C++.
AFAIR in the Path wb this feature is used in several places in the code.
AFAIR in the Path wb this feature is used in several places in the code.
Re: FYI: Debian Testing build broken (due to debian packaging)
Yes it is.
Did some digging and found this issue which was fixed in version 6.2: https://bugreports.qt.io/browse/PYSIDE-1436
The current version in debian is 5.15 - I suspect the versioning follows the major version of QT which probably makes it questionable if this fix (and thereby compatibility with python 3.10) gets backported.
If that's the case we might have an issue when the next debian version comes out.
Can I tell the FC build to use python 3.9 instead of the default python3 installation?
Did some digging and found this issue which was fixed in version 6.2: https://bugreports.qt.io/browse/PYSIDE-1436
The current version in debian is 5.15 - I suspect the versioning follows the major version of QT which probably makes it questionable if this fix (and thereby compatibility with python 3.10) gets backported.
If that's the case we might have an issue when the next debian version comes out.
Can I tell the FC build to use python 3.9 instead of the default python3 installation?
Re: FYI: Debian Testing build broken (due to debian packaging)
I have set the default python version in my installation to 3.9. I have successfully used that to compile some other packages. FreeCAD however insists on still using version 3.10.
What do I need to do in order for the FC build to pick up the set version of the OS?
What do I need to do in order for the FC build to pick up the set version of the OS?
Re: FYI: Debian Testing build broken (due to debian packaging)
Yes. If you open the CMake GUI panel then you will find the entry PYTHON_EXECUTABLE that by default is set to python3. Just change it to the absolute path of the Python executable of 3.9 and rerun Configure.Can I tell the FC build to use python 3.9 instead of the default python3 installation?
Re: FYI: Debian Testing build broken (due to debian packaging)
Interesting, although the system is configured to map `/usr/bin/python3` to version 3.9 the build system still picks up 3.10. However, explicitly specifying `-DPYTHON_EXECUTABLE=/usr/bin/python3` does the trick for the build to pick up 3.9.
Thanks! Not sure if this is a viable solution for when Debian will be released but it works for me!
Thanks! Not sure if this is a viable solution for when Debian will be released but it works for me!
Re: FYI: Debian Testing build broken (due to debian packaging)
I should know better than to post before the build completed and I did an actual test . FC segfaults.
Code: Select all
Program received signal SIGSEGV, Segmentation fault.
#0 /lib/x86_64-linux-gnu/libc.so.6(+0x38920) [0x7f531a466920]
#1 /usr/lib/x86_64-linux-gnu/libpyside2.cpython-310-x86_64-linux-gnu.so.5.15(+0x1f501) [0x7f53199fb501]
#2 /usr/lib/x86_64-linux-gnu/libpython3.9.so.1.0(+0xda2be) [0x7f531bbe62be]
#3 /usr/lib/x86_64-linux-gnu/libpython3.9.so.1.0(_PyEval_EvalFrameDefault+0x6dce) [0x7f531bb83a9e]
#4 /usr/lib/x86_64-linux-gnu/libpython3.9.so.1.0(+0x70053) [0x7f531bb7c053]
#5 /usr/lib/x86_64-linux-gnu/libpython3.9.so.1.0(_PyObject_FastCallDictTstate+0x53) [0x7f531bbdd093]
#6 /usr/lib/x86_64-linux-gnu/libpython3.9.so.1.0(_PyObject_Call_Prepend+0xe0) [0x7f531bbdd2b0]
#7 /usr/lib/x86_64-linux-gnu/libpython3.9.so.1.0(+0x13582a) [0x7f531bc4182a]
#8 /usr/lib/x86_64-linux-gnu/libpython3.9.so.1.0(+0x12a3aa) [0x7f531bc363aa]
#9 /usr/lib/x86_64-linux-gnu/libpython3.9.so.1.0(_PyObject_MakeTpCall+0x88) [0x7f531bbda9b8]
#10 /usr/lib/x86_64-linux-gnu/libpython3.9.so.1.0(_PyEval_EvalFrameDefault+0x839d) [0x7f531bb8506d]
#11 /usr/lib/x86_64-linux-gnu/libpython3.9.so.1.0(+0x1acafe) [0x7f531bcb8afe]
#12 /usr/lib/x86_64-linux-gnu/libpython3.9.so.1.0(_PyEval_EvalCodeWithName+0x4e) [0x7f531bcb8e3e]
#13 /usr/lib/x86_64-linux-gnu/libpython3.9.so.1.0(PyEval_EvalCodeEx+0x3b) [0x7f531bcb8e8b]
#14 /usr/lib/x86_64-linux-gnu/libpython3.9.so.1.0(PyEval_EvalCode+0x1b) [0x7f531bcb421b]
#15 /usr/lib/x86_64-linux-gnu/libpython3.9.so.1.0(+0x1a6ccd) [0x7f531bcb2ccd]
#16 /usr/lib/x86_64-linux-gnu/libpython3.9.so.1.0(+0x116fef) [0x7f531bc22fef]
#17 /usr/lib/x86_64-linux-gnu/libpython3.9.so.1.0(_PyEval_EvalFrameDefault+0x2362) [0x7f531bb7f032]
#18 /usr/lib/x86_64-linux-gnu/libpython3.9.so.1.0(+0x1acafe) [0x7f531bcb8afe]
#19 /usr/lib/x86_64-linux-gnu/libpython3.9.so.1.0(_PyFunction_Vectorcall+0xa1) [0x7f531bbd3e01]
#20 /usr/lib/x86_64-linux-gnu/libpython3.9.so.1.0(_PyEval_EvalFrameDefault+0x811d) [0x7f531bb84ded]
#21 /usr/lib/x86_64-linux-gnu/libpython3.9.so.1.0(+0x70053) [0x7f531bb7c053]
#22 /usr/lib/x86_64-linux-gnu/libpython3.9.so.1.0(_PyEval_EvalFrameDefault+0x6dce) [0x7f531bb83a9e]
#23 /usr/lib/x86_64-linux-gnu/libpython3.9.so.1.0(+0x70053) [0x7f531bb7c053]
#24 /usr/lib/x86_64-linux-gnu/libpython3.9.so.1.0(_PyEval_EvalFrameDefault+0x6466) [0x7f531bb83136]
#25 /usr/lib/x86_64-linux-gnu/libpython3.9.so.1.0(+0x70053) [0x7f531bb7c053]
#26 /usr/lib/x86_64-linux-gnu/libpython3.9.so.1.0(_PyEval_EvalFrameDefault+0x6466) [0x7f531bb83136]
#27 /usr/lib/x86_64-linux-gnu/libpython3.9.so.1.0(+0x70053) [0x7f531bb7c053]
#28 /usr/lib/x86_64-linux-gnu/libpython3.9.so.1.0(+0xd0894) [0x7f531bbdc894]
#29 /usr/lib/x86_64-linux-gnu/libpython3.9.so.1.0(_PyObject_CallMethodIdObjArgs+0xfb) [0x7f531bbdcbfb]
#30 /usr/lib/x86_64-linux-gnu/libpython3.9.so.1.0(PyImport_ImportModuleLevelObject+0x29c) [0x7f531bcddf0c]
#31 /usr/lib/x86_64-linux-gnu/libpython3.9.so.1.0(+0x1a8aea) [0x7f531bcb4aea]
#32 /usr/lib/x86_64-linux-gnu/libpython3.9.so.1.0(+0x112443) [0x7f531bc1e443]
#33 /usr/lib/x86_64-linux-gnu/libpython3.9.so.1.0(_PyObject_Call+0x5c) [0x7f531bbdd48c]
#34 /usr/lib/x86_64-linux-gnu/libpython3.9.so.1.0(_PyEval_EvalFrameDefault+0x2362) [0x7f531bb7f032]
#35 /usr/lib/x86_64-linux-gnu/libpython3.9.so.1.0(+0x1acafe) [0x7f531bcb8afe]
#36 /usr/lib/x86_64-linux-gnu/libpython3.9.so.1.0(_PyFunction_Vectorcall+0xa1) [0x7f531bbd3e01]
#37 /usr/lib/x86_64-linux-gnu/libpython3.9.so.1.0(_PyEval_EvalFrameDefault+0x5456) [0x7f531bb82126]
#38 /usr/lib/x86_64-linux-gnu/libpython3.9.so.1.0(+0x1acafe) [0x7f531bcb8afe]
#39 /usr/lib/x86_64-linux-gnu/libpython3.9.so.1.0(_PyEval_EvalCodeWithName+0x4e) [0x7f531bcb8e3e]
#40 /usr/lib/x86_64-linux-gnu/libpython3.9.so.1.0(PyEval_EvalCodeEx+0x3b) [0x7f531bcb8e8b]
#41 /usr/lib/x86_64-linux-gnu/libpython3.9.so.1.0(PyEval_EvalCode+0x1b) [0x7f531bcb421b]
#42 /usr/lib/x86_64-linux-gnu/libpython3.9.so.1.0(+0x1f147e) [0x7f531bcfd47e]
#43 /usr/lib/x86_64-linux-gnu/libpython3.9.so.1.0(PyRun_StringFlags+0x93) [0x7f531bcfdd93]
#44 /usr/lib/x86_64-linux-gnu/libpython3.9.so.1.0(+0x1a6bac) [0x7f531bcb2bac]
#45 /usr/lib/x86_64-linux-gnu/libpython3.9.so.1.0(+0x116fef) [0x7f531bc22fef]
#46 /usr/lib/x86_64-linux-gnu/libpython3.9.so.1.0(_PyEval_EvalFrameDefault+0x6466) [0x7f531bb83136]
#47 /usr/lib/x86_64-linux-gnu/libpython3.9.so.1.0(+0x1acafe) [0x7f531bcb8afe]
#48 /usr/lib/x86_64-linux-gnu/libpython3.9.so.1.0(_PyFunction_Vectorcall+0xa1) [0x7f531bbd3e01]
#49 /usr/lib/x86_64-linux-gnu/libpython3.9.so.1.0(_PyEval_EvalFrameDefault+0x6466) [0x7f531bb83136]
#50 /usr/lib/x86_64-linux-gnu/libpython3.9.so.1.0(+0x1acafe) [0x7f531bcb8afe]
#51 /usr/lib/x86_64-linux-gnu/libpython3.9.so.1.0(_PyFunction_Vectorcall+0xa1) [0x7f531bbd3e01]
#52 /usr/lib/x86_64-linux-gnu/libpython3.9.so.1.0(_PyEval_EvalFrameDefault+0x6466) [0x7f531bb83136]
#53 /usr/lib/x86_64-linux-gnu/libpython3.9.so.1.0(+0x1acafe) [0x7f531bcb8afe]
#54 /usr/lib/x86_64-linux-gnu/libpython3.9.so.1.0(_PyEval_EvalCodeWithName+0x4e) [0x7f531bcb8e3e]
#55 /usr/lib/x86_64-linux-gnu/libpython3.9.so.1.0(PyEval_EvalCodeEx+0x3b) [0x7f531bcb8e8b]
#56 /usr/lib/x86_64-linux-gnu/libpython3.9.so.1.0(PyEval_EvalCode+0x1b) [0x7f531bcb421b]
#57 /usr/lib/x86_64-linux-gnu/libpython3.9.so.1.0(+0x1f147e) [0x7f531bcfd47e]
#58 /usr/lib/x86_64-linux-gnu/libpython3.9.so.1.0(PyRun_StringFlags+0x93) [0x7f531bcfdd93]
#59 0x7f531c295ba7 in Base::InterpreterSingleton::runString[abi:cxx11](char const*) from /home/markus/projects/FreeCAD/dev/build/lib/libFreeCADBase.so+0xd5
#60 0x7f531e3e5c43 in Gui::Application::runInitGuiScript() from /home/markus/projects/FreeCAD/dev/build/lib/libFreeCADGui.so+0x3d
#61 0x7f531e3e7aa6 in Gui::Application::runApplication() from /home/markus/projects/FreeCAD/dev/build/lib/libFreeCADGui.so+0x1e50
#62 ../build/bin/FreeCAD(+0x124d3) [0x55b7deff04d3]
#63 /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xcd) [0x7f531a4517fd]
#64 ../build/bin/FreeCAD(+0x1166a) [0x55b7defef66a]
Re: FYI: Debian Testing build broken (due to debian packaging)
What does this mean? Is your PySide2 version linked to Py3.10? Would be really strange if shiboken2 linked Py3.9 and PySide2 Py3.10.#1 /usr/lib/x86_64-linux-gnu/libpyside2.cpython-310-x86_64-linux-gnu.so.5.15(+0x1f501) [0x7f53199fb501]