Packaging solution: (ana)conda

Here's the place for discussion related to coding in FreeCAD, C++ or Python. Design, interfaces and structures.
Forum rules
Be nice to others! Respect the FreeCAD code of conduct!
User avatar
looo
Veteran
Posts: 3941
Joined: Mon Nov 11, 2013 5:29 pm

Re: Packaging solution: (ana)conda

Post by looo »

I added gmsh to the freecad channel. It was easy to build on linux, but no chance on windows. (missing libraries gdb, slapc, petsc...)
User avatar
sgrogan
Veteran
Posts: 6499
Joined: Wed Oct 22, 2014 5:02 pm

Re: Packaging solution: (ana)conda

Post by sgrogan »

looo wrote: Tue Apr 10, 2018 9:18 pm but no chance on windows. (missing libraries gdb, slapc, petsc...)
I think this is not a big deal. FreeCAD (FEM) only calls the gmesh executable in a sub-process. The gmsh.exe is readily available and the user only needs to install it and set the path in fem > preferences. It looks like gmsh.exe is statically linked because only the .exe has to be added to bin (no dll's) of the portable builds.
In the future maybe addons-manager can handle this? It's included in the Win-bundle only as a user convenience. On Linux (PPA) the user must use their package manager to install gmsh and then set the path in FreeCAD.
"fight the good fight"
User avatar
looo
Veteran
Posts: 3941
Joined: Mon Nov 11, 2013 5:29 pm

Re: Packaging solution: (ana)conda

Post by looo »

yes, it's not a problem for freecad, but it shows that msys is still the prefered way to get opensource work on windows...
If you think about it, compiling a os project with a closed source compiler is not the best idea...
User avatar
kkremitzki
Veteran
Posts: 2518
Joined: Thu Mar 03, 2016 9:52 pm
Location: Illinois

Re: Packaging solution: (ana)conda

Post by kkremitzki »

looo wrote: Wed Apr 11, 2018 5:05 am yes, it's not a problem for freecad, but it shows that msys is still the prefered way to get opensource work on windows...
If you think about it, compiling a os project with a closed source compiler is not the best idea...
+1 to this. When I wanted to set up a Windows dev VM and had to try to use Microsoft websites to get software it felt like I was back in the stone ages... I'm sure their marketing/sales department has overruled software engineering concerns to make it difficult to find old stuff, if not remove them altogether.
Like my FreeCAD work? I'd appreciate any level of support via Patreon, Liberapay, or PayPal! Read more about what I do at my blog.
User avatar
easyw-fc
Veteran
Posts: 3633
Joined: Thu Jul 09, 2015 9:34 am

Re: Packaging solution: (ana)conda

Post by easyw-fc »

kkremitzki wrote: Wed Apr 11, 2018 11:11 am
looo wrote: Wed Apr 11, 2018 5:05 am yes, it's not a problem for freecad, but it shows that msys is still the prefered way to get opensource work on windows...
If you think about it, compiling a os project with a closed source compiler is not the best idea...
+1 to this. When I wanted to set up a Windows dev VM and had to try to use Microsoft websites to get software it felt like I was back in the stone ages... I'm sure their marketing/sales department has overruled software engineering concerns to make it difficult to find old stuff, if not remove them altogether.
+1 ... kicad also deploys Msys2 builds for windows
User avatar
saso
Veteran
Posts: 1924
Joined: Fri May 16, 2014 1:14 pm
Contact:

Re: Packaging solution: (ana)conda

Post by saso »

http://blog.llvm.org/2018/03/clang-is-n ... e-for.html

Edit: How does debugging or similar compare to the msvc builds?
User avatar
looo
Veteran
Posts: 3941
Joined: Mon Nov 11, 2013 5:29 pm

Re: Packaging solution: (ana)conda

Post by looo »

yes clang is also an option. So this means we could slowly move dependencies towards clang. I guess this is the easier option. But who knows what strategy will be choosen for conda-package. Clang seems really the most promising. As far as I know openblas [1] is build this way for windows. And scipy [2] seems to be the next library which tries to use clang/flang toolchain.
But the problem with clang/flang is that is not well tested.

Some experiments with mingw/msys showed me that it is also not that good supported for conda. At least I wasn't able to build openmpi this way. And there are many libraries which use mpi...

So no idea which way to support. If there is mpi for the mingw-toolchain, I guess this would also open some doors.

[1] https://github.com/conda-forge/openblas ... a.yaml#L35
[2] https://github.com/conda-forge/scipy-feedstock/pull/78
User avatar
looo
Veteran
Posts: 3941
Joined: Mon Nov 11, 2013 5:29 pm

Re: Packaging solution: (ana)conda

Post by looo »

libmed was accepted: https://github.com/conda-forge/libmed-feedstock

So once the builds are uploaded, nothing should prevent from building freecad with osx and conda-dependencies.
Jee-Bee
Veteran
Posts: 2566
Joined: Tue Jun 16, 2015 10:32 am
Location: Netherlands

Re: Packaging solution: (ana)conda

Post by Jee-Bee »

looo wrote: Wed Apr 18, 2018 5:29 pm libmed was accepted: https://github.com/conda-forge/libmed-feedstock

So once the builds are uploaded, nothing should prevent from building freecad with osx and conda-dependencies.
Congrats :D i would say py3
User avatar
easyw-fc
Veteran
Posts: 3633
Joined: Thu Jul 09, 2015 9:34 am

Re: Packaging solution: (ana)conda

Post by easyw-fc »

looo wrote: Wed Apr 18, 2018 5:29 pm
Hi @loo
I'm testing the conda builds here
https://github.com/sgrogan/FreeCAD/rele ... it_package
and here
https://github.com/FreeCAD/FreeCAD/rele ... g/0.18_pre (FreeCAD-0.18-dev_PY3_QT5-x64_dev_win.7z)
What I've noticed is that the View get updated lately in Conda version, compared to the same release on standard old mode build
(FreeCAD_0.18.13554_x64_dev_win.7z)

Here a small screencast:
py3-qt5-update-view.gif
py3-qt5-update-view.gif (646.65 KiB) Viewed 1302 times
In the first part of the screencast (FC std build) the loading is progressive and objects are loaded and updated as they get imported,
in the second part of the screencast (FC conba build), the loading is locked until all objects are imported and only at the end they get updated.

This may become an issue for my WB when the board have hundreds of sub-parts because the interface just freezes until the end of the loading process.

To test it locally you only need to install kicad StepUp WB through the Addon installer...

Thx for having a look at
Post Reply