vocx wrote: ↑Mon Sep 30, 2019 11:38 pm
You don't have to do a lot of things. You just have to do this
Code: Select all
cmake -DBUILD_QT5=ON -DPYTHON_EXECUTABLE=/usr/bin/python3 -DCMAKE_BUILD_TYPE=Debug ../freecad-source && make -j3
Ok, sorry, but I had to do this:
Code: Select all
sudo cmake -DBUILD_QT5=ON -DPYTHON_EXECUTABLE=/usr/bin/python3.7 DCMAKE_BUILD_TYPE=Debug -DPYTHON_INCLUDE_DIR=/usr/include/python3.7m -DPYTHON_LIBRARY=/usr/lib/arm-linux-gnueabihf/libpython3.7m.so -DPYTHON_PACKAGES_PATH=/usr/local/lib/python3.7/dist-packages/ ../freecad-source
(if no sudo and those compiling options I've got errors during cmake. Don't ask me why, if I remember I've found those instructions from Freecad compile documentation page. I used it as a workaround to my troubles. I don't paste errors here, maybe offtopic, but I could if you would).
Then sudo make (otherwise it does not compile):
However pi user has usual permission:
Code: Select all
pi@raspberrypi:~/freecad-build/bin $ umask -S
u=rwx,g=rx,o=rx
Anyway, after 2 hours compiling:
(OFF TOPIC: For those who are interesting in performance of RPI4:
make -j4 -> 100% CPU compiling during 2hours, reaching over 2Go RAM sometimes, 63°C Max with passive heatsink ,no fan, ambient temperature 28°C)
I've got the following callstack (similar with the one Werner mentioned above)
Code: Select all
pi@raspberrypi:~/freecad-build/bin $ gdb ./FreeCAD
GNU gdb (Raspbian 8.2.1-2) 8.2.1
Copyright (C) 2018 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Type "show copying" and "show warranty" for details.
This GDB was configured as "arm-linux-gnueabihf".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
<http://www.gnu.org/software/gdb/documentation/>.
For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from ./FreeCAD...done.
(gdb) run
Starting program: /home/pi/freecad-build/bin/FreeCAD
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/arm-linux-gnueabihf/libthread_db.so.1".
FreeCAD 0.19, Libs: 0.19R17651 (Git)
© Juergen Riegel, Werner Mayer, Yorik van Havre 2001-2019
##### #### ### ####
# # # # # #
# ## #### #### # # # # #
#### # # # # # # # ##### # #
# # #### #### # # # # #
# # # # # # # # # ## ## ##
# # #### #### ### # # #### ## ## ##
[New Thread 0xae087210 (LWP 23883)]
using qt5ct plugin
[New Thread 0xa7fbe210 (LWP 23884)]
D-Bus global menu: no
[New Thread 0xa1814210 (LWP 23885)]
[New Thread 0xa1013210 (LWP 23886)]
[New Thread 0xa0812210 (LWP 23887)]
D-Bus system tray: no
[New Thread 0x9edff210 (LWP 23888)]
connect failed: No such file or directory
Coin warning in cc_glglue_instance(): Error when setting up the GL context. This can happen if there is no current context, or if the context has been set up incorrectly.
Thread 1 "FreeCAD" received signal SIGSEGV, Segmentation fault.
0xafcbde74 in XDefaultScreenOfDisplay () from /usr/lib/arm-linux-gnueabihf/libX11.so.6
(gdb) bt full
#0 0xafcbde74 in XDefaultScreenOfDisplay () at /usr/lib/arm-linux-gnueabihf/libX11.so.6
#1 0xb3de3ad0 in () at /usr/lib/arm-linux-gnueabihf/libCoin.so.80c
#2 0xb3de4454 in glxglue_init () at /usr/lib/arm-linux-gnueabihf/libCoin.so.80c
#3 0xb3ddd0e0 in cc_glglue_instance () at /usr/lib/arm-linux-gnueabihf/libCoin.so.80c
#4 0xb3c8e120 in SoGLRenderActionP::isDirectRendering(SoState const*) const () at /usr/lib/arm-linux-gnueabihf/libCoin.so.80c
#5 0xb3c90358 in SoGLRenderActionP::render(SoNode*) () at /usr/lib/arm-linux-gnueabihf/libCoin.so.80c
#6 0xb3c905a0 in SoGLRenderAction::beginTraversal(SoNode*) () at /usr/lib/arm-linux-gnueabihf/libCoin.so.80c
#7 0xb3c8a2fc in SoAction::apply(SoNode*) () at /usr/lib/arm-linux-gnueabihf/libCoin.so.80c
#8 0xb60fa454 in Gui::SoBoxSelectionRenderAction::apply(SoNode*) (this=0xec9270, node=0xe63b28) at /home/pi/freecad-source/src/Gui/SoFCSelectionAction.cpp:1180
__PRETTY_FUNCTION__ = "virtual void Gui::SoBoxSelectionRenderAction::apply(SoNode*)"
#9 0xb61e2544 in Gui::View3DInventorViewer::renderScene() (this=0xf08700) at /home/pi/freecad-source/src/Gui/View3DInventorViewer.cpp:1744
vp = {winsize = {vec = {1650, 864}}, vporigin = {vec = {0, 0}}, vpsize = {vec = {1, 1}}, vporigin_s = {vec = {0, 0}}, vpsize_s = {vec = {1650, 864}}, pixperinch = 72}
origin = {vec = {0, 0}}
size = {vec = {1650, 864}}
col =
{cspec = QColor::Rgb, ct = {argb = {alpha = 65535, red = 60138, green = 58853, blue = 56540, pad = 0}, ahsv = {alpha = 65535, hue = 60138, saturation = 58853, value = 56540, pad = 0}, acmyk = {alpha = 65535, cyan = 60138, magenta = 58853, yellow = 56540, black = 0}, ahsl = {alpha = 65535, hue = 60138, saturation = 58853, lightness = 56540, pad = 0}, array = {65535, 60138, 58853, 56540, 0}}}
glra = 0xec9270
state = 0xed7bd8
#10 0xb61e1e60 in Gui::View3DInventorViewer::actualRedraw() (this=0xf08700) at /home/pi/freecad-source/src/Gui/View3DInventorViewer.cpp:1627
#11 0xb618798c in SIM::Coin3D::Quarter::QuarterWidget::paintEvent(QPaintEvent*) (this=0xf08700, event=0xbeffcf20) at /home/pi/freecad-source/src/Gui/Quarter/QuarterWidget.cpp:922
w = 0xf07358
__PRETTY_FUNCTION__ = "virtual void SIM::Coin3D::Quarter::QuarterWidget::paintEvent(QPaintEvent*)"
#12 0xb6190fcc in SIM::Coin3D::Quarter::SoQTQuarterAdaptor::paintEvent(QPaintEvent*) (this=0xf08700, event=0xbeffcf20) at /home/pi/freecad-source/src/Gui/Quarter/SoQTQuarterAdaptor.cpp:717
#13 0xb30fb590 in QWidget::event(QEvent*) () at /usr/lib/arm-linux-gnueabihf/libQt5Widgets.so.5
#14 0xb31a41bc in QFrame::event(QEvent*) () at /usr/lib/arm-linux-gnueabihf/libQt5Widgets.so.5
#15 0xb3401118 in QGraphicsView::viewportEvent(QEvent*) () at /usr/lib/arm-linux-gnueabihf/libQt5Widgets.so.5
#16 0xb6187b5c in SIM::Coin3D::Quarter::QuarterWidget::viewportEvent(QEvent*) (this=0xf08700, event=0xbeffcf20) at /home/pi/freecad-source/src/Gui/Quarter/QuarterWidget.cpp:996
#17 0xb2908090 in QCoreApplicationPrivate::sendThroughObjectEventFilters(QObject*, QEvent*) () at /usr/lib/arm-linux-gnueabihf/libQt5Core.so.5
#18 0xb30b8da0 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /usr/lib/arm-linux-gnueabihf/libQt5Widgets.so.5
#19 0xb30c12a8 in QApplication::notify(QObject*, QEvent*) () at /usr/lib/arm-linux-gnueabihf/libQt5Widgets.so.5
#20 0x00f07358 in ()
(gdb) quit
A debugging session is active.
Inferior 1 [process 23868] will be killed.
Quit anyway? (y or n) y
pi@raspberrypi:~/freecad-build/bin $
No more to say.. Any comments appreciated. Thanks for attention.
Edit: ambient temperature added about off topic informations