Recipe for FreeCAD without OpenGL for macOS

1 view
Skip to first unread message

Silencium Sixtyeight

unread,
Nov 12, 2020, 2:30:51 PM11/12/20
to Anaconda - Public
When building/installing FreeCAD 0.19.pre with Conda under macOS, apparently a version is getting built, which is depending on the macOS OpenGL.

Since macOS 10.14 OpenGL has been deprecated, and with macOS 11 ("Big Sur") it simply has vanished completely, rendering FreeCAD stuck at launch time, hence useless.

How would I accomplish building/installing a FreeCAD 0.19.pre version with Conda without facilitating OpenGL?

Ray Donnelly

unread,
Nov 12, 2020, 3:08:51 PM11/12/20
to Anaconda - Public
It would not be possible. At latest not at present. This is Apple's decision and nothing to do with Anaconda though.

--
Community Discussion Forum for Anaconda
---
You received this message because you are subscribed to the Google Groups "Anaconda - Public" group.
To unsubscribe from this group and stop receiving emails from it, send an email to anaconda+u...@continuum.io.
To view this discussion on the web visit https://groups.google.com/a/continuum.io/d/msgid/anaconda/0532cf24-5e66-4c63-871d-0255bdef807dn%40continuum.io.

Juan Sanchez

unread,
Nov 12, 2020, 3:56:31 PM11/12/20
to anac...@continuum.io
Hi,

You can try a vnc-server, such as one from brew, which would emulate opengl in software.  You can also install macOS 10.14 in virtual box or vmware, which is legal since you are still using apple hardware.

Regards,

Juan


silen...@web.de

unread,
Nov 12, 2020, 4:27:08 PM11/12/20
to anac...@continuum.io
Things is, when downloading FC 0.18 from the FC web site, it’s basically working, albeit I hardly can use the assembly4 WB, which apparently requires FC 0.19 in place.

Downloading FC 0.19 from FC result in FC getting stuck, with the missing OpenGL error message in the system log showing up.

Installing/building FC 0.19 by means of homebrew works somehow, albeit on the one hand it’s an older versions (0.19 18something), on the other hand it crashes quite oftentimes.

So I was wondering if there might be a recipe for conda as well.

Ray Donnelly

unread,
Nov 13, 2020, 4:15:45 AM11/13/20
to Anaconda - Public
I cannot speak to FC since I've never run it. Did you try installing Quartz X11 first and running 0.19 against that? It might pick up the Quartz X11 OpenGL drivers that way and it might work better (if that's what the FC developers target). It will depend on the features used by FC and those supported by the lib though.

There are technologies in development that intend to bring back good OpenGL support to macOS. MoltenVK is already quite good at implementing Vulkan on top of Metal/Metal2 and the rust-based gfx-portability project aims for the same thing. After that there's another project called Zink: https://www.collabora.com/news-and-blog/blog/2018/10/31/introducing-zink-opengl-implementation-vulkan/ which then implements OpenGL on top of Vulkan. Yes, this involves a few layers but in theory it would work to some extent! It would involve some translation layers but they are quite slim.

At the end of the day, Apple made a call here which means getting OpenGL to work well on Apple OSes in future requires someone to do a good amount of work (thankfully mostly already done or in progress!).

But OpenGL is such a bad graphics API anyway that the best thing would be for projects to switch to Vulkan at this point. I doubt that's easy for FreeCad to do though at this stage, but that will depend on how cleanly they interface with the OpenGL API in their code.

FWIW, I do have an interest in getting all this to work within conda on defaults (including OpenGL for what I'd like to call 'legacy OpenGL' apps at this point). I've started some work on adding both MoltenVK and gfx-portability packages. If you are interested the please let me know.

Cheers,

Ray.

--
Community Discussion Forum for Anaconda
---
You received this message because you are subscribed to the Google Groups "Anaconda - Public" group.
To unsubscribe from this group and stop receiving emails from it, send an email to anaconda+u...@continuum.io.

silen...@web.de

unread,
Nov 13, 2020, 6:18:27 AM11/13/20
to anac...@continuum.io
Vulkan sounds kind of promising, albeit wouldn’t it require Apple adopting this? Integrating Vulkan into macOS, as a replacement to or in conjunction with Metal? Something they have introduced just quite recently?

What I’m kind of curious about is how homebrew has managed to provide a macOS build of FC 0.19pre, which at least can get launched and used somehow. Have these guys found a way of circumventing OpenGL altogether?

Cheers!

Martin

Ray Donnelly

unread,
Nov 13, 2020, 6:39:16 AM11/13/20
to Anaconda - Public
MoltenVK implements vulkan on top of apples metal2. Apple are otherwise not involved. 

--
Community Discussion Forum for Anaconda
---
You received this message because you are subscribed to the Google Groups "Anaconda - Public" group.
To unsubscribe from this group and stop receiving emails from it, send an email to anaconda+u...@continuum.io.

silen...@web.de

unread,
Nov 13, 2020, 8:12:47 AM11/13/20
to anac...@continuum.io
Ah..thanks! I’ll give it a shot

Ray Donnelly

unread,
Nov 13, 2020, 8:28:02 AM11/13/20
to Anaconda - Public
Great! If you want to play with my WIP stuff, here are my recipes: https://github.com/mingwandroid/staged-recipes/tree/master/recipes

I think having good OpenGL on conda-forge on macOS (for those with metal/metal2) would be a fantastic goal!

--
Community Discussion Forum for Anaconda
---
You received this message because you are subscribed to the Google Groups "Anaconda - Public" group.
To unsubscribe from this group and stop receiving emails from it, send an email to anaconda+u...@continuum.io.

silen...@web.de

unread,
Nov 25, 2020, 6:22:07 AM11/25/20
to Anaconda - Public
As of last week I’m now on the new Apple M1 platform, so another whole new beast.

Currently I’m struggling getting homebrew and conda working properly again, without the need of facilitating Rosetta 2, aiming for a native M1/ARM64 build.

Is there any chance of having a FC M1-native build?
> You received this message because you are subscribed to a topic in the Google Groups "Anaconda - Public" group.
> To unsubscribe from this topic, visit https://groups.google.com/a/continuum.io/d/topic/anaconda/kfchqNVtg3Q/unsubscribe.
> To unsubscribe from this group and all its topics, send an email to anaconda+u...@continuum.io.
> To view this discussion on the web visit https://groups.google.com/a/continuum.io/d/msgid/anaconda/CAF5kcVX6%3D%3D-_u7bazpjGoMmV9rCCKo0HLm9uNGYXVgj_oyH_mA%40mail.gmail.com.

Reply all
Reply to author
Forward
0 new messages