Debian 11 FlatCAM_beta_8.994_source - [SOLVED]

Issue #680 open
Stanislav Granovskiy created an issue

Python 3.10.x

All works except DRILLS. Try to generate Drill job.

Comments (10)

  1. Marius Stanciu

    You are very scarce with details so I will just make a guess…

    Go to Preferences → EXCELLON → Path Optimization and change the Algorithm to Rtree or TSA.
    Save, restart the app and try again.

  2. Stanislav Granovskiy reporter

    python3 -V
    Python 3.11.2

    With 3.10 i had same behavior!

    in common.py i did change collections to

    import collections.abc
    try:
        # 👇️ using Python 3.10+
        from collections.abc import MutableMapping
    except ImportError:
        # 👇️ using Python 3.10-
        from collections import MutableMapping
    collections.MutableMapping = collections.abc.MutableMapping
    collections.Mapping = collections.abc.Mapping
    collections.MutableSequence = collections.abc.MutableSequence
    collections.Sequence = collections.abc.Sequence
    collections.Iterable = collections.abc.Iterable
    collections.Iterator = collections.abc.Iterator
    collections.MutableSet = collections.abc.MutableSet
    collections.Callable = collections.abc.Callable
    

    I also installed ezdxf 0.14.1

    And reinstall vispy to 0.7

    That what i see on the screen when grbl file is loaded

    That what i see when i try to edit gerber

    That what i see when i tryed “Generate CNCJob object”

    ….

    NOTHING :) App did disapeard.

    That what i see in a log.

    python3 FlatCAM.py 
    /usr/local/lib/python3.11/dist-packages/vispy/visuals/graphs/layouts/networkx_layout.py:10: UserWarning: Networkx not found, please install network to use its layouts
      warnings.warn(
    QSocketNotifier: Can only be used with threads started with QThread
    [INFO][MainThread] FlatCAM Starting...
    [DEBUG][MainThread] Created data folder: /home/maddogmaycry/.FlatCAM
    [DEBUG][MainThread] Created data preprocessors folder: /home/maddogmaycry/.FlatCAM/preprocessors
    [DEBUG][MainThread] Creating empty tools_db.FlatDB
    [DEBUG][MainThread] Creating empty current_defaults.FlatConfig
    [DEBUG][MainThread] FlatCAM factory defaults written to: /home/maddogmaycry/.FlatCAM/factory_defaults.FlatConfig
    [DEBUG][MainThread] Creating empty recent.json
    [DEBUG][MainThread] Creating empty recent_projects.json
    [DEBUG][MainThread] Application path is /home/maddogmaycry/Desktop/FlatCAM_beta_8.994_sources
    [DEBUG][MainThread] Started in /home/maddogmaycry/Desktop/FlatCAM_beta_8.994_sources
    [DEBUG][MainThread] FlatCAM defaults loaded from: /home/maddogmaycry/.FlatCAM/current_defaults.FlatConfig
    [DEBUG][MainThread] MainGUI.__init__() --> UI layout restored from defaults. QSettings set to 'standard'
    [DEBUG][MainThread] App.save_project_auto_update() --> updated the interval timeout.
    [DEBUG][MainThread] App.__init__() --> Applied English language.
    [DEBUG] App.PreferencesUIManager.save_defaults()
    [DEBUG][MainThread] propagate_defaults()
    [DEBUG][MainThread] App.save_project_auto_update() --> updated the interval timeout.
    [DEBUG][MainThread] propagate_defaults()
    [DEBUG] Finished Preferences GUI form initialization.
    [DEBUG][MainThread] Finished creating Object Collection.
    [DEBUG][MainThread] Setting up canvas: 3D
    [DEBUG][MainThread] Finished Canvas initialization in 0.18725085258483887 seconds.
    [DEBUG][MainThread] Finished creating Workers crew.
    [DEBUG][MainThread] TCL Shell has been initialized.
    [DEBUG][MainThread] Tools are installed.
    [DEBUG][MainThread] Initialization of the Geometry Editor is finished ...
    [DEBUG][MainThread] Initialization of the Excellon Editor is finished ...
    [DEBUG][MainThread] Initialization of the Gerber Editor is finished ...
    [DEBUG][MainThread] Initialization of the GCode Editor is finished ...
    [DEBUG][MainThread] Finished adding FlatCAM Editor's.
    [DEBUG][MainThread] + Adding Exclusion Areas
    [DEBUG][MainThread] -> First Run: Setting up the first Layout
    [DEBUG][MainThread]  ---> New Layout
    [DEBUG][MainThread]  -> Remove Toolbars
    [DEBUG][MainThread]  -> Add New Toolbars
    [DEBUG][MainThread]  -> Add actions to new Toolbars
    [DEBUG][MainThread]  -> Connecting Toolbar Signals
    [DEBUG][MainThread]  -> Connecting Tools Toolbar Signals
    [DEBUG][MainThread]  -> Connecting Editors Toolbar Signals
    [DEBUG][MainThread] -> First Run: Updating the Defaults file with Factory Defaults
    [DEBUG] App.PreferencesUIManager.save_defaults()
    [DEBUG][MainThread] propagate_defaults()
    [DEBUG][MainThread] App.save_project_auto_update() --> updated the interval timeout.
    [DEBUG][MainThread] Recent items list has been populated.
    [DEBUG][MainThread]  -> Connecting Toolbar Signals
    [DEBUG][MainThread]  -> Connecting Tools Toolbar Signals
    [DEBUG][MainThread] Finished connecting Signals.
    [DEBUG][MainThread] END of constructor. Releasing control.
    WARNING: QObject::connect: No such signal QPlatformNativeInterface::systemTrayWindowChanged(QScreen*)
    [DEBUG][MainThread] on_file_openproject()
    [DEBUG][MainThread] on_file_openproject()
    [DEBUG][MainThread] on_fileopengerber()
    [DEBUG][Dummy-4] open_gerber()
    [DEBUG][Dummy-4] AppObject.new_object()
    [DEBUG][Dummy-4] Calling object constructor...
    [DEBUG][Dummy-4] FlatCAMObj.visible()
    [DEBUG][Dummy-4] 0.041941 seconds before initialize().
    [DEBUG][Dummy-4] Gerber format found. (%FSLAX46Y46*%) 
    [DEBUG][Dummy-4] Gerber format found. Gerber zeros = L (L-omit leading zeros, T-omit trailing zeros, D-no zero supression)
    [DEBUG][Dummy-4] Gerber format found. Coordinates type = Absolute (Absolute or Relative)
    [DEBUG][Dummy-4] Gerber units found = MM
    [DEBUG][Dummy-4] Starting macro. Line 15: %AMRoundRect*
    [DEBUG][Dummy-4] Continuing macro. Line 16.
    [DEBUG][Dummy-4] Continuing macro. Line 17.
    [DEBUG][Dummy-4] Continuing macro. Line 18.
    [DEBUG][Dummy-4] Continuing macro. Line 19.
    [DEBUG][Dummy-4] Continuing macro. Line 20.
    [DEBUG][Dummy-4] Continuing macro. Line 21.
    [DEBUG][Dummy-4] Continuing macro. Line 22.
    [DEBUG][Dummy-4] Continuing macro. Line 23.
    [DEBUG][Dummy-4] Continuing macro. Line 24.
    [DEBUG][Dummy-4] Continuing macro. Line 25.
    [DEBUG][Dummy-4] Continuing macro. Line 26.
    [DEBUG][Dummy-4] Continuing macro. Line 27.
    [DEBUG][Dummy-4] Continuing macro. Line 28.
    [DEBUG][Dummy-4] Continuing macro. Line 29.
    [DEBUG][Dummy-4] Continuing macro. Line 30.
    [DEBUG][Dummy-4] End of macro. Line 30.
    [DEBUG][Dummy-4] Starting macro. Line 31: %AMHorizOval*
    [DEBUG][Dummy-4] Continuing macro. Line 32.
    [DEBUG][Dummy-4] Continuing macro. Line 33.
    [DEBUG][Dummy-4] Continuing macro. Line 34.
    [DEBUG][Dummy-4] Continuing macro. Line 35.
    [DEBUG][Dummy-4] Continuing macro. Line 36.
    [DEBUG][Dummy-4] Continuing macro. Line 37.
    [DEBUG][Dummy-4] Continuing macro. Line 38.
    [DEBUG][Dummy-4] Continuing macro. Line 39.
    [DEBUG][Dummy-4] Continuing macro. Line 40.
    [DEBUG][Dummy-4] End of macro. Line 40.
    [DEBUG][Dummy-4] Starting macro. Line 41: %AMRotRect*
    [DEBUG][Dummy-4] Continuing macro. Line 42.
    [DEBUG][Dummy-4] Continuing macro. Line 43.
    [DEBUG][Dummy-4] Continuing macro. Line 44.
    [DEBUG][Dummy-4] Continuing macro. Line 45.
    [DEBUG][Dummy-4] Continuing macro. Line 46.
    [DEBUG][Dummy-4] Continuing macro. Line 47.
    [DEBUG][Dummy-4] Continuing macro. Line 48.
    [DEBUG][Dummy-4] End of macro. Line 48.
    [WARNING][Dummy-4] Joining 1156 polygons.
    [DEBUG][Dummy-4] Union by buffer...
    [WARNING][Dummy-4] Union(buffer) done.
    [DEBUG][Dummy-4] New object with name: Pirata-F_Cu.gbr. 9.986881 seconds executing initialize().
    [DEBUG][Dummy-4] parseGerber.Gerber.bounds()
    [DEBUG][Dummy-4] Moving new object back to main thread.
    [DEBUG][MainThread] on_object_created()
    [DEBUG][MainThread] on_object_created --> OC.append()
    [DEBUG][MainThread] GerberObject.set_ui()
    [DEBUG][MainThread] set_ui --> FlatCAMObj.to_form()
    [DEBUG][MainThread] build_ui--> FlatCAMObj.build_ui()
    [DEBUG][MainThread] register_recent()
    [DEBUG][MainThread]    gerber
    [DEBUG][MainThread]    /home/maddogmaycry/Desktop/apps/Pirata-F_Cu.gbr
    [DEBUG][Dummy-5] plotting_task --> GerberObject.plot()
    [DEBUG][Dummy-5] plot --> FlatCAMObj.plot()
    [DEBUG][MainThread] Recent items list has been populated.
    [DEBUG][Dummy-5] 0.807302 seconds adding object and plotting.
    [DEBUG][MainThread] build_ui--> FlatCAMObj.build_ui()
    [DEBUG][MainThread] build_ui--> FlatCAMObj.build_ui()
    [DEBUG][MainThread] FlatCAMObj.visible()
    [DEBUG][MainThread] on_tool_select('select')
    [DEBUG][MainThread] select is checked.
    [WARNING][Dummy-5] Found 0 clear polygons.
    [DEBUG][MainThread] ######################### Starting the EDITOR ################################
    [WARNING][Dummy-5] Polygon difference done for 58 apertures.
    WARNING: Wayland does not support QWindow::requestActivate()
    [DEBUG][MainThread] AppGerberEditor.update_fcgerber() --> 'NoneType' object has no attribute 'stop'
    [DEBUG][Dummy-4] Update the Gerber object with edited content. Source is: PIRATA-F_CU.GBR
    [DEBUG][MainThread] ######################### Closing the EDITOR ################################
    [DEBUG][Dummy-4] AppObject.new_object()
    [DEBUG][Dummy-4] Calling object constructor...
    [DEBUG][Dummy-4] FlatCAMObj.visible()
    [DEBUG][Dummy-4] 0.016606 seconds before initialize().
    [DEBUG][Dummy-4] export_gerber()
    [DEBUG][Dummy-4] GerberObject.export_gerber() --> Generating the Gerber code from the selected Gerber file
    [DEBUG][Dummy-4] New object with name: Pirata-F_Cu.gbr_edit. 3.035903 seconds executing initialize().
    [DEBUG][Dummy-4] parseGerber.Gerber.bounds()
    [DEBUG][Dummy-4] Moving new object back to main thread.
    [DEBUG][MainThread] on_object_created()
    [DEBUG][Dummy-4] FlatCAMObj.visible()
    [DEBUG][MainThread] on_object_created --> OC.append()
    [DEBUG][MainThread] GerberObject.set_ui()
    [DEBUG][MainThread] set_ui --> FlatCAMObj.to_form()
    [DEBUG][MainThread] build_ui--> FlatCAMObj.build_ui()
    [DEBUG][MainThread] build_ui--> FlatCAMObj.build_ui()
    [DEBUG][Dummy-5] plotting_task --> GerberObject.plot()
    [DEBUG][Dummy-5] plot --> FlatCAMObj.plot()
    [DEBUG][Dummy-5] 0.708668 seconds adding object and plotting.
    [DEBUG][MainThread] build_ui--> FlatCAMObj.build_ui()
    [DEBUG][MainThread] Mouse button pressed on list
    [DEBUG][MainThread] build_ui--> FlatCAMObj.build_ui()
    [DEBUG][MainThread] Mouse button pressed on list
    [DEBUG][MainThread] build_ui--> FlatCAMObj.build_ui()
    [DEBUG][MainThread] Mouse button pressed on list
    [DEBUG][MainThread] build_ui--> FlatCAMObj.build_ui()
    [DEBUG][MainThread] Mouse button pressed on list
    [DEBUG][MainThread] on_file_openproject()
    [DEBUG][MainThread] on_file_openproject()
    [DEBUG][MainThread] on_fileopenexcellon()
    [DEBUG][Dummy-4] open_excellon()
    [DEBUG][Dummy-4] AppObject.new_object()
    [DEBUG][Dummy-4] Calling object constructor...
    [DEBUG][Dummy-4] FlatCAMObj.visible()
    [DEBUG][Dummy-4] 0.019567 seconds before initialize().
    [WARNING][Dummy-4] Found start of the header: M48
    [WARNING][Dummy-4] Line ignored, it's a comment: ; DRILL file {KiCad 6.0.11+dfsg-1} date Sun 11 Jun 2023 12:39:31 AM CEST
    [WARNING][Dummy-4] Line ignored: ; DRILL file {KiCad 6.0.11+dfsg-1} date Sun 11 Jun 2023 12:39:31 AM CEST
    [WARNING][Dummy-4] Line ignored, it's a comment: ; FORMAT={-:-/ absolute / metric / decimal}
    [WARNING][Dummy-4] Line ignored: ; FORMAT={-:-/ absolute / metric / decimal}
    [WARNING][Dummy-4] Line ignored, it's a comment: ; #@! TF.CreationDate,2023-06-11T00:39:31+02:00
    [WARNING][Dummy-4] Line ignored: ; #@! TF.CreationDate,2023-06-11T00:39:31+02:00
    [WARNING][Dummy-4] Line ignored, it's a comment: ; #@! TF.GenerationSoftware,Kicad,Pcbnew,6.0.11+dfsg-1
    [WARNING][Dummy-4] Line ignored: ; #@! TF.GenerationSoftware,Kicad,Pcbnew,6.0.11+dfsg-1
    [WARNING][Dummy-4] Line ignored, it's a comment: ; #@! TF.FileFunction,Plated,1,2,PTH
    [WARNING][Dummy-4] Line ignored: ; #@! TF.FileFunction,Plated,1,2,PTH
    [WARNING][Dummy-4] Line ignored: FMAT,2
    [WARNING][Dummy-4] UNITS found inline - Value before conversion: MM
    [DEBUG][Dummy-4] FlatCAMObj.ExcellonObject.convert_units()
    [DEBUG][Dummy-4] appParsers.ParseExcellon.Excellon.convert_units() --> Factor: 1.0
    [DEBUG][Dummy-4] appParsers.ParseExcellon.Excellon.scale()
    [DEBUG][Dummy-4] appParsers.ParseExcellon.Excellon.create_geometry()
    [DEBUG][Dummy-4] appParsers.ParseExcellon.Excellon.create_geometry()
    [WARNING][Dummy-4] UNITS found inline - Value after conversion: MM
    [WARNING][Dummy-4] Excellon format preset is: 3:3
    [WARNING][Dummy-4] Type of ZEROS found inline, in header: None
    [WARNING][Dummy-4] Line ignored, it's a comment: ; #@! TA.AperFunction,Plated,PTH,ViaDrill
    [WARNING][Dummy-4] Line ignored: ; #@! TA.AperFunction,Plated,PTH,ViaDrill
    [DEBUG][Dummy-4] Tool definition: 1 {'C': 0.1, 'solid_geometry': []}
    [WARNING][Dummy-4] Line ignored, it's a comment: ; #@! TA.AperFunction,Plated,PTH,ViaDrill
    [WARNING][Dummy-4] Line ignored: ; #@! TA.AperFunction,Plated,PTH,ViaDrill
    [DEBUG][Dummy-4] Tool definition: 2 {'C': 0.2, 'solid_geometry': []}
    [WARNING][Dummy-4] Line ignored, it's a comment: ; #@! TA.AperFunction,Plated,PTH,ComponentDrill
    [WARNING][Dummy-4] Line ignored: ; #@! TA.AperFunction,Plated,PTH,ComponentDrill
    [DEBUG][Dummy-4] Tool definition: 3 {'C': 0.2, 'solid_geometry': []}
    [WARNING][Dummy-4] Line ignored, it's a comment: ; #@! TA.AperFunction,Plated,PTH,ComponentDrill
    [WARNING][Dummy-4] Line ignored: ; #@! TA.AperFunction,Plated,PTH,ComponentDrill
    [DEBUG][Dummy-4] Tool definition: 4 {'C': 0.5, 'solid_geometry': []}
    [WARNING][Dummy-4] Line ignored, it's a comment: ; #@! TA.AperFunction,Plated,PTH,ComponentDrill
    [WARNING][Dummy-4] Line ignored: ; #@! TA.AperFunction,Plated,PTH,ComponentDrill
    [DEBUG][Dummy-4] Tool definition: 5 {'C': 0.9, 'solid_geometry': []}
    [WARNING][Dummy-4] Found end of the header: %
    [WARNING][Dummy-4] Line ignored: G90
    [WARNING][Dummy-4] Line ignored: G05
    [DEBUG][Dummy-4] Tool change: 1
    [DEBUG][Dummy-4] Tool change: 2
    [DEBUG][Dummy-4] Tool change: 3
    [DEBUG][Dummy-4] Tool change: 5
    [DEBUG][Dummy-4] Tool change: 4
    [WARNING][Dummy-4] Line ignored: M15
    [WARNING][Dummy-4] Line ignored: M16
    [WARNING][Dummy-4] Line ignored: G05
    [WARNING][Dummy-4] Line ignored: M15
    [WARNING][Dummy-4] Line ignored: M16
    [WARNING][Dummy-4] Line ignored: G05
    [WARNING][Dummy-4] Line ignored: M15
    [WARNING][Dummy-4] Line ignored: M16
    [WARNING][Dummy-4] Line ignored: G05
    [DEBUG][Dummy-4] Tool change: 0
    [WARNING][Dummy-4] Line ignored: M30
    [INFO][Dummy-4] Zeros: None, Units MM.
    [DEBUG][Dummy-4] appParsers.ParseExcellon.Excellon.create_geometry()
    [DEBUG][Dummy-4] New object with name: Pirata-PTH.drl. 0.024893 seconds executing initialize().
    [DEBUG][Dummy-4] appParsers.ParseExcellon.Excellon.bounds()
    [DEBUG][Dummy-4] Moving new object back to main thread.
    [DEBUG][MainThread] on_object_created()
    [DEBUG][MainThread] on_object_created --> OC.append()
    [DEBUG][MainThread] ExcellonObject.set_ui()
    [DEBUG][MainThread] set_ui --> FlatCAMObj.to_form()
    [DEBUG][MainThread] register_recent()
    [DEBUG][MainThread]    excellon
    [DEBUG][MainThread]    /home/maddogmaycry/Desktop/apps/Pirata-PTH.drl
    [DEBUG][Dummy-6] plot --> FlatCAMObj.plot()
    [DEBUG][MainThread] Recent items list has been populated.
    [DEBUG][Dummy-6] 0.085687 seconds adding object and plotting.
    [DEBUG][MainThread] build_ui--> FlatCAMObj.build_ui()
    [DEBUG][MainThread] Mouse button pressed on list
    [DEBUG][MainThread] Mouse button pressed on list
    [DEBUG][MainThread] build_ui--> FlatCAMObj.build_ui()
    [DEBUG][MainThread] ToolDrilling().run() was launched ...
    [DEBUG][MainThread] ToolDrilling.build_tool_ui()
    [DEBUG][MainThread] ToolDrilling.on_object_changed()
    [DEBUG][MainThread] ToolDrilling.build_tool_ui()
    [DEBUG][MainThread] Tools sorted are: [1]
    [DEBUG][MainThread] Found 1 TOOLS with drills.
    [DEBUG][MainThread] Found 1 TOOLS with drills after converting slots to drills.
    [DEBUG][MainThread] Object Pirata-PTH.drl_cnc has been promised.
    [DEBUG][Dummy-4] AppObject.new_object()
    [DEBUG][Dummy-4] Calling object constructor...
    [DEBUG][Dummy-4] Creating CNCJob object...
    [DEBUG][Dummy-4] FlatCAMObj.visible()
    [DEBUG][Dummy-4] FlatCAMCNCJob.gcode_header()
    [DEBUG][Dummy-4] 0.037718 seconds before initialize().
    [DEBUG] Creating CNC Job from Excellon for tool: 1
    [DEBUG] Using OR-Tools Basic drill path optimization.
    [INFO] Total distance: 0
    [WARNING] Number of drills for which to generate GCode: 8
    [DEBUG][Dummy-4] The total travel distance with OR-TOOLS Basic Algorithm is: 299.1106539821326
    [DEBUG][Dummy-4] The total travel distance including travel to end position is: 299.1106539821326
    
    [DEBUG][Dummy-4] New object with name: Pirata-PTH.drl_cnc. 0.050532 seconds executing initialize().
    [DEBUG] camlib.CNCJob.bounds()
    [DEBUG][Dummy-4] Moving new object back to main thread.
    [DEBUG][MainThread] on_object_created()
    [DEBUG][MainThread] on_object_created --> OC.append()
    WARNING: Traceback (most recent call last):
      File "/home/maddogmaycry/Desktop/FlatCAM_beta_8.994_sources/appObjects/AppObject.py", line 356, in on_object_created
        self.app.collection.append(obj)
      File "/home/maddogmaycry/Desktop/FlatCAM_beta_8.994_sources/appObjects/ObjectCollection.py", line 572, in append
        obj.set_ui(obj.ui_type(app=self.app))
                   ^^^^^^^^^^^^^^^^^^^^^^^^^
      File "/home/maddogmaycry/Desktop/FlatCAM_beta_8.994_sources/appGUI/ObjectUI.py", line 2488, in __init__
        self.jog_step_entry = FCSliderWithDoubleSpinner()
                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^
      File "/home/maddogmaycry/Desktop/FlatCAM_beta_8.994_sources/appGUI/GUIElements.py", line 1169, in __init__
        self.slider.setMaximum(max)
      File "/home/maddogmaycry/Desktop/FlatCAM_beta_8.994_sources/appGUI/GUIElements.py", line 1142, in setMaximum
        return super(FCDoubleSlider, self).setMaximum(value * self._multi)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    TypeError: setMaximum(self, a0: int): argument 1 has unexpected type 'float'
    Aborted (core dumped)
    

  3. Marius Stanciu

    It’s been a few years since I made the release for the beta 8.994 but if I remember correctly this issue was fixed a long time ago (in my working copy) by casting the maxvalue to an integer. Somebody else brought this to my attention at the time.

    Try the Beta branch on my repository here:
    https://bitbucket.org/marius_stanciu/flatcam_beta/branch/Beta

    LE: General advice: whenever you report an issue, try to keep it simple, one issue at a time. Don’t bring multiple problems/bugs on the same Issue . Provide the steps to replicate the problem in simple and easy to follow sentences. Also it is generally required to provide also the files (or reduced versions of them that still show the issue) so the issue can be reliably reproduced.
    In the current Issue you make a mix of: Gerber/Excellon files are not plotted; using the Gerber Editor; using the Drilling Plugin and generating the GCode.

    LLE: with Beta branch make sure that the Shapely modules is under 1.8.5 version.

  4. Stanislav Granovskiy reporter

    This time it’s python3.9 again )

    absl-py==1.4.0
    affine==2.4.0
    attrs==23.1.0
    beautifulsoup4==4.9.3
    Brlapi==0.8.2
    certifi==2020.6.20
    chardet==4.0.0
    chrome-gnome-shell==0.0.0
    click==8.1.3
    click-plugins==1.1.1
    cligj==0.7.2
    contourpy==1.0.7
    cssselect2==0.7.0
    cupshelpers==1.0
    cycler==0.11.0
    dbus-python==1.2.16
    dill==0.3.6
    distro==1.5.0
    distro-info==1.0
    ezdxf==1.0.3
    fonttools==4.40.0
    freetype-py==2.4.0
    GDAL==3.2.2
    gpg===1.14.0-unknown
    hsluv==5.0.3
    html5lib==1.1
    httplib2==0.18.1
    idna==2.10
    importlib-resources==5.12.0
    kiwisolver==1.4.4
    libcomps==0.1.15
    louis==3.16.0
    lxml==4.9.2
    Mako==1.1.3
    MarkupSafe==1.1.1
    matplotlib==3.7.1
    natsort==7.1.0
    numpy==1.24.3
    olefile==0.46
    ortools==9.6.2534
    packaging==23.1
    Pillow==9.5.0
    protobuf==4.23.2
    pycairo==1.16.2
    pycups==2.0.1
    pycurl==7.43.0.6
    PyGObject==3.38.0
    PyOpenGL==3.1.7
    pyparsing==3.0.9
    pypng==0.20220715.0
    PyQt5==5.15.9
    PyQt5-Qt5==5.15.2
    PyQt5-sip==12.12.1
    PySimpleSOAP==1.16.2
    pysmbc==1.0.23
    python-apt==2.2.1
    python-dateutil==2.8.2
    python-debian==0.1.39
    python-debianbts==3.1.0
    pyxdg==0.27
    qrcode==7.4.2
    rasterio==1.3.7
    reportbug==7.10.3+deb11u1
    reportlab==4.0.4
    requests==2.25.1
    rpm==4.16.1.2
    Rtree==1.0.1
    scipy==1.10.1
    scour==0.38.2
    Shapely==1.8.5
    simplejson==3.17.2
    six==1.16.0
    snuggs==1.4.7
    soupsieve==2.2.1
    svg.path==6.3
    svglib==1.5.1
    tinycss2==1.2.1
    tk==0.1.0
    typing_extensions==4.6.3
    unattended-upgrades==0.1
    urllib3==1.26.5
    vispy==0.13.0
    webencodings==0.5.1
    wxPython==4.0.7
    xdg==5
    zipp==3.15.0

    python3 FlatCAM.py 
    Traceback (most recent call last):
      File "/home/maddogmaycry/Downloads/Beta/FlatCAM.py", line 6, in <module>
        from app_Main import App
      File "/home/maddogmaycry/Downloads/Beta/app_Main.py", line 47, in <module>
        from appCommon.Common import LoudDict
      File "/home/maddogmaycry/Downloads/Beta/appCommon/Common.py", line 18, in <module>
        from appGUI.VisPyVisuals import ShapeCollection
      File "/home/maddogmaycry/Downloads/Beta/appGUI/VisPyVisuals.py", line 16, in <module>
        from appGUI.VisPyTesselators import GLUTess
      File "/home/maddogmaycry/Downloads/Beta/appGUI/VisPyTesselators.py", line 9, in <module>
        from OpenGL import GLU
      File "/usr/local/lib/python3.9/dist-packages/OpenGL/GLU/__init__.py", line 8, in <module>
        from OpenGL.GLU.projection import *
      File "/usr/local/lib/python3.9/dist-packages/OpenGL/GLU/projection.py", line 3, in <module>
        from OpenGL import GL
      File "/usr/local/lib/python3.9/dist-packages/OpenGL/GL/__init__.py", line 4, in <module>
        from OpenGL.GL.VERSION.GL_1_1 import *
      File "/usr/local/lib/python3.9/dist-packages/OpenGL/GL/VERSION/GL_1_1.py", line 14, in <module>
        from OpenGL.raw.GL.VERSION.GL_1_1 import *
      File "/usr/local/lib/python3.9/dist-packages/OpenGL/raw/GL/VERSION/GL_1_1.py", line 7, in <module>
        from OpenGL.raw.GL import _errors
      File "/usr/local/lib/python3.9/dist-packages/OpenGL/raw/GL/_errors.py", line 4, in <module>
        _error_checker = _ErrorChecker( _p, _p.GL.glGetError )
    AttributeError: 'NoneType' object has no attribute 'glGetError'
    

  5. Marius Stanciu

    Sorry,
    I’m not much into Linux and cannot debug Linux issues.
    I can only suppose that the OpenGL version is not what it is supposed to be. Check some of the issues around here (even the closed ones), I think I remember someone speaking about OpenGL/Linux/FlatCAM.

  6. Stanislav Granovskiy reporter

    @Marius Stanciu

    Yea, linux is Linux what linux IS :)

    For true jedis :)

    Debian 11

    git clone https://bitbucket.org/marius_stanciu/flatcam_beta/src/Beta/
    cd Beta
    sudo chmod +x setup_ubuntu.sh
    sudo pip install -r requirements.txt 
    sudo pip uninstall PyOpenGL
    sudo pip install PyOpenGL==3.1.5
    

    Works like a charm for me.

    I think you can edit requiments.txt becuse i did’nt really understand this version of GIT you has here and i can’t do it at my self :(

    You do fantastic work! In compare to Windows version FlatCam on Linux works 10x faster! Thx YOU!

  7. Log in to comment