Skip to content

Instantly share code, notes, and snippets.

@natevw
Last active April 23, 2025 23:34
Show Gist options
  • Save natevw/3e6fc929aff358b38c0a to your computer and use it in GitHub Desktop.
Save natevw/3e6fc929aff358b38c0a to your computer and use it in GitHub Desktop.
how I got FlatCAM 8.1 working on OS X [a long time ago — see comment thread for lots of good tips from others!]
brew update
brew install pyqt geos spatialindex
easy_install pip
pip install virtualenv
cd Development/Others\'/
mkdir FlatCAM
cd FlatCAM
virtualenv env
source env/bin/activate
pip install numpy matplotlib rtree scipy shapely simplejson
# copy contents of FlatCAM_8.1.zip into FlatCAM folder
python FlatCAM.py
@jimwildman
Copy link

jimwildman commented Jun 17, 2023 via email

@SurathepThonthan
Copy link

FlatCAM_beta_8.994_sources % python FlatCAM.py

Traceback (most recent call last):
File "/Users//FlatCAM/FlatCAM_beta_8.994_sources/FlatCAM.py", line 6, in
from app_Main import App
File "/Users//FlatCAM/FlatCAM_beta_8.994_sources/app_Main.py", line 47, in
from appCommon.Common import LoudDict
File "/Users//FlatCAM/FlatCAM_beta_8.994_sources/appCommon/Common.py", line 88, in
class LoudUniqueList(list, collections.MutableSequence):
^^^^^^^^^^^^^^^^^^^^^^^^^^^
AttributeError: module 'collections' has no attribute 'MutableSequence'

plc help me

@alexcode9
Copy link

if you are using python 3.10+ change import collection in appCommon/Common.py to

import collection.abc
collections.Iterable = collections.abc.Iterable
collections.Mapping = collections.abc.Mapping
collections.MutableSet = collections.abc.MutableSet
collections.MutableMapping = collections.abc.MutableMapping

@alexrohde42
Copy link

alexrohde42 commented Mar 15, 2024

if you are using python 3.10+ change import collection in appCommon/Common.py to

import collection.abc
collections.Iterable = collections.abc.Iterable
collections.Mapping = collections.abc.Mapping
collections.MutableSet = collections.abc.MutableSet
collections.MutableMapping = collections.abc.MutableMapping

After that I get the error ModuleNotFoundError: No module named 'ezdxf.math.vector'
Module ezdxf is installed

How can I fix it?

Thanks for an reply

@FlyingSamson
Copy link

After that I get the error ModuleNotFoundError: No module named 'ezdxf.math.vector'

This was fixed on the Beta branch in this commit
See also this issue

@FlyingSamson
Copy link

I'm currently in the process of getting FlatCAM build with MacPorts.

I finally got it all working, but it will still take some time until I got all newly created port files for flatcams dependencies into shape to get them into the upstream macports repo.

One thing I wanted to share here, though: The problem with

AttributeError: module 'vispy.visuals.markers' has no attribute '_marker_dict' error

is due to a "patch" in appGui/VisPyPatches.py, which has long been available in upstream VisPy. So lines 16-34 in this file can safely be removed and then flatcam also runs with newer (i.e., > 0.9.0) vispy versions.

@Isaprez
Copy link

Isaprez commented Jul 11, 2024

anyone know about this error ?

Traceback (most recent call last):
File "/Users/isai/Desktop/FlatCAM/FlatCAM.py", line 6, in
from app_Main import App
File "/Users/isai/Desktop/FlatCAM/app_Main.py", line 94, in
from appTools import *
File "/Users/isai/Desktop/FlatCAM/appTools/init.py", line 38, in
from appTools.ToolShell import FCShell
File "/Users/isai/Desktop/FlatCAM/appTools/ToolShell.py", line 19, in
import tclCommands
File "/Users/isai/Desktop/FlatCAM/tclCommands/init.py", line 75, in
module = loader.find_module(name).load_module(name)
^^^^^^^^^^^^^^^^^^
AttributeError: 'FileFinder' object has no attribute 'find_module'

@FlyingSamson
Copy link

I presume you are trying to run flatcam with python 3.12, because FileFinder.find_module, which has been deprecated since python 3.4 and removed in 3.12 (see https://docs.python.org/3.11/library/importlib.html#importlib.abc.PathEntryFinder.find_module).

So you can either switch to python < 3.12 or try to fix that line by using load_spec instead.

@kokospalme
Copy link

Did someone manage to pack flatcam in a standalone app with py2app or pyInstaller? I'm trying to get flatcam work on my Mac (OSX 16.x) but I have no luck. I tried with different python versions but had no luck. I would super grateful if someone could compile flatcam to a standalone application. There is also an icon in .icns format I made from the png logo. Feel free to contact me, I'll share it with you.

@danieleotto
Copy link

I presume you are trying to run flatcam with python 3.12, because FileFinder.find_module, which has been deprecated since python 3.4 and removed in 3.12 (see https://docs.python.org/3.11/library/importlib.html#importlib.abc.PathEntryFinder.find_module).

So you can either switch to python < 3.12 or try to fix that line by using load_spec instead.

Has anyone fixed this? the original code line is module = loader.find_module(name).load_module(name)
i've changed to module = loader.find_spec(name).create_module(name) but it triggers the ModuleSpec Object has no attribute 'create_module'

It likes the find_spec change but not the create_module one

@thomergil
Copy link

On the off-chance people don't know this:

brew tap tomoyanonymous/flatcam
brew install flatcam-beta

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment