[DONE] conda: update to gcc7 and py3.7

Having trouble installing or compiling FreeCAD? Get help here.
looo
Posts: 2529
Joined: Mon Nov 11, 2013 5:29 pm

Re: [wip] conda: update to gcc7 and py3.7

Postby looo » Tue Feb 05, 2019 7:42 am

finally FreeCAD on linux with py37 seems to work nicely. I am not yet sure if I have patched the dynamic exception specifications the right way [1], but smesh compiled and netgen meshing is enabled in freecad. The tests are also working. Only one error reported because I didn't have gmsh installed. Also there are still python3 problems which are not leading to a negative test.

If anyone wants to try (only linux64 for now):

Code: Select all

conda create -n freecad_gcc freecad blas=*=openblas python=3.7 -c freecad/label/testing -c freecad -c conda-forge
But I didn't see any improvements compared to gcc4.8. So I don't know if it makes sense to update the conda-based-appimage soon.

Sometimes one has to go two steps back to see the obvious way to proceed. I nearly gave up on porting to gcc7/py3.7. But now I belive future looks quite bright, as the current build tools will hopefully stay the same for a while.

So, what is next?
- vtk8.2.0 needs to be solved: there are problems currently with windows and linux, maybe going back to 8.1.2 + patches for pyside2
- waiting for @trelau to merge patches for smesh (maybe someone can review this [1], and maybe we should also apply it to the internal smesh)
- In the long run it would be nice if freecad could be compiled with c++14 and c++17 although it also works with c++11 for now. Maybe someone feels motivated to investigate.
- make a brake from packaging and try to make a mental update to come back with a fresh mind :D


[1] https://github.com/LaughlinResearch/SMESH/pull/13
looo
Posts: 2529
Joined: Mon Nov 11, 2013 5:29 pm

Re: [wip] conda: update to gcc7 and py3.7

Postby looo » Mon Mar 04, 2019 3:15 pm

some updates (I am still fighting :D ):

- vtk8.2.0 is coming soon (hopefully) https://github.com/conda-forge/vtk-feedstock/pull/76
- occt was rerendered with latest conda-smithy
- gmsh 4.1.5 is coming https://github.com/conda-forge/gmsh-feedstock/pull/6

smesh is still not updated. Somehow the cmake-setup of the new toolchain doesn't allow to link to symlinks (like the vtk-package has)
https://github.com/conda-forge/smesh-feedstock/pull/21
https://github.com/conda-forge/vtk-feedstock/issues/77

No idea how to solve this. I hope conda-developers have a look. Temporary I added a workaround for smesh which links directly to the libraries and not to the symlinks:
https://github.com/looooo/smesh-feedsto ... -vtk.patch

But the same has to be done for FreeCAD too. So not a good workaround. And there is another problem with the smesh osx-builds:

Code: Select all

ninja: error: '/Users/distiller/miniconda3/conda-bld/netgen_1548802582949/_build_env/lib/libz.dylib', needed by 'libNETGENPlugin.8.3.0.3.dylib', missing and no known rule to make it
I am not yet sure how to fix this. netgen is not dependent on libz and there is no requirement specified. So maybe this is again related to changing conda things. So maybe a rerendering will fix this:
btw.: isn't it nice how rerendering works in the conda-world:
asking for rerendering: https://github.com/conda-forge/netgen-f ... /issues/19 will result in a bot creating a PR which rerenders the feedstock: https://github.com/conda-forge/netgen-feedstock/pull/20
looo
Posts: 2529
Joined: Mon Nov 11, 2013 5:29 pm

Re: [wip] conda: update to gcc7 and py3.7

Postby looo » Tue Mar 05, 2019 3:00 pm

Finally I found the smesh problem. Something in between cmake and the clang compiler went wrong and the c++-feature detection is not working. The compiler is for sure able to compile c++11 / c++14 specific stuff. So it was possible to add the features with a cmake-patch.

The second problem reported previously (netgen/smesh) was fixed by making netgen depending on zlib and by adding this option to the build-script:

Code: Select all

-D CMAKE_PREFIX_PATH=$PREFIX
Now I am trying to build freecad with the new-compilers, but I expect this won't work out of the box.
triplus
Posts: 8355
Joined: Mon Dec 12, 2011 4:45 pm

Re: [wip] conda: update to gcc7 and py3.7

Postby triplus » Tue Mar 05, 2019 4:33 pm

looo wrote:
Mon Mar 04, 2019 3:15 pm
some updates (I am still fighting :D ):
Keep on the good fight!
looo
Posts: 2529
Joined: Mon Nov 11, 2013 5:29 pm

Re: [wip] conda: update to gcc7 and py3.7

Postby looo » Tue Mar 05, 2019 4:57 pm

triplus wrote:
Tue Mar 05, 2019 4:33 pm
Keep on the good fight!
The fight is won, the mini happily compiles freecad :D
triplus
Posts: 8355
Joined: Mon Dec 12, 2011 4:45 pm

Re: [wip] conda: update to gcc7 and py3.7

Postby triplus » Tue Mar 05, 2019 4:59 pm

looo wrote:
Tue Mar 05, 2019 4:57 pm
The fight is won, the mini happily compiles freecad :D
Good to hear that.
chrisb
Posts: 15624
Joined: Tue Mar 17, 2015 9:14 am

Re: [wip] conda: update to gcc7 and py3.7

Postby chrisb » Tue Mar 05, 2019 5:21 pm

looo wrote:
Tue Mar 05, 2019 4:57 pm
The fight is won, the mini happily compiles freecad :D
:D :D
triplus
Posts: 8355
Joined: Mon Dec 12, 2011 4:45 pm

Re: [wip] conda: update to gcc7 and py3.7

Postby triplus » Tue Mar 05, 2019 6:28 pm

Miniconda just got a whole new meaning. ;)
looo
Posts: 2529
Joined: Mon Nov 11, 2013 5:29 pm

Re: [wip] conda: update to gcc7 and py3.7

Postby looo » Tue Mar 05, 2019 9:43 pm

:D
package is uploaded. Feel free to try.

Code: Select all

conda create -n freecad-clang4.0 freecad -c freecad/label/testing -c freecad -c conda-forge
chrisb
Posts: 15624
Joined: Tue Mar 17, 2015 9:14 am

Re: [wip] conda: update to gcc7 and py3.7

Postby chrisb » Tue Mar 05, 2019 10:21 pm

You mean a new FreeCAD version is ready? I saw only the well known 15525.