Can't create mesh with standard mesher anymore

Having trouble installing or compiling FreeCAD? Get help here.
Forum rules
Be nice to others! Respect the FreeCAD code of conduct!
neo2001
Posts: 34
Joined: Wed Oct 23, 2019 12:25 pm

Can't create mesh with standard mesher anymore

Post by neo2001 »

I'm using the latest git version of FreeCAD.

Since a few weeks, I can't create meshes ("Meshes" --> "Create mesh from shape..." --> "Standard" (Settings) --> "OK") anymore. I only get this error message:

Traceback (most recent call last):
File "<string>", line 1, in <module>
<class 'ImportError'>: libhdf5.so.103: cannot open shared object file: No such file or directory
Traceback (most recent call last):
File "<string>", line 5, in <module>
<class 'NameError'>: name 'MeshPart' is not defined
name 'MeshPart' is not defined


The build always completes without errors, but as soon as I try to create a new mesh from any shape using the standard mesher I get the message above.

I'm running Manjaro and using the AUR package for FreeCAD git: https://aur.archlinux.org/packages/freecad-git/

I've tried to find more information, but wasn't successful. Is this already "officially" known or should I create a bug report?
vocx
Veteran
Posts: 5197
Joined: Thu Oct 18, 2018 9:18 pm

Re: Can't create mesh with standard mesher anymore

Post by vocx »

neo2001 wrote: Sun Jun 07, 2020 7:16 pm I'm using the latest git version of FreeCAD.
...
I'm running Manjaro and using the AUR package for FreeCAD git: https://aur.archlinux.org/packages/freecad-git/
If you aren't compiling yourself, you aren't using the latest Git version. See Compile on Linux.

This package that you are using says "Last Updated: 2020-05-04 09:10", that's a while ago.

It also has its own set of dependencies. Those dependencies may be broken.

In your case, it seems the "libhdf5" may be the problem. Or maybe their package didn't compile "MeshPart" for some reason.
lonaowna commented on 2020-05-04 18:14

@neo2001 yes, there are some compatibility issues with HDF5 1.12 and MED. See also the discussion over at the med package.

I think downgrading HDF5 should provide a temporary solution.
So, this doesn't seem to be a problem of FreeCAD, but rather of this package, or the libraries provided in your Arch or Manjaro system. Try with the AppImage and see if it works.

I just tested on my computer and don't seem to have a problem using Mesh_FromPartShape.

Code: Select all

OS: Ubuntu 18.04.4 LTS (ubuntu:GNOME/ubuntu)
Word size of OS: 64-bit
Word size of FreeCAD: 64-bit
Version: 0.19.21535 (Git)
Build type: Release
Branch: master
Hash: 9daeaba394b2c34731d77c1dadb55392f1e88d22
Python version: 3.6.9
Qt version: 5.9.5
Coin version: 4.0.0a
OCC version: 7.3.0
Locale: English/UnitedStates (en_US)
Always add the important information to your posts if you need help. Also see Tutorials and Video tutorials.
To support the documentation effort, and code development, your donation is appreciated: liberapay.com/FreeCAD.
neo2001
Posts: 34
Joined: Wed Oct 23, 2019 12:25 pm

Re: Can't create mesh with standard mesher anymore

Post by neo2001 »

This is a git package, which means it will always pull the latest version from Github before building. The package itself only gets updated when something else changes (like urls or dependencies). So the date given does not reflect the source code used.

I know that libhdf5 may be the problem or med or something else that depends on these. But I don't know for sure and can't find any info or reason.

I'm also wondering, since the build always finishes without errors, the error appears only at runtime.

I also know that the AppImage works fine, but I want to build myself.

Surely there is a reason for this error and I just want to make sure that the ones capable of fixing it, actually know about it. That's all I want to find out.
User avatar
sgrogan
Veteran
Posts: 6499
Joined: Wed Oct 22, 2014 5:02 pm

Re: Can't create mesh with standard mesher anymore

Post by sgrogan »

neo2001 wrote: Mon Jun 08, 2020 9:03 pm Surely there is a reason for this error and I just want to make sure that the ones capable of fixing it, actually know about it. That's all I want to find out.
Can you post the used version of hdf5?
Also I not very familiar with the AUR build system but I think for FreeCAD it uses FreeCAD's internal SMESH?
"fight the good fight"
neo2001
Posts: 34
Joined: Wed Oct 23, 2019 12:25 pm

Re: Can't create mesh with standard mesher anymore

Post by neo2001 »

These are the versions currently installed.

$ pacman -Q freecad-git med hdf5
freecad-git 0.18.r5421.g89ddab33f6-1
med 4.0.0-6
hdf5 1.12.0-2


As far as I understand smesh (salome mesh) is the mesher being used by default, yes.

There are only these libhdf5 libs in the filesystem:
/usr/lib/libhdf5.so (Symlink)
/usr/lib/libhdf5.so.200 (Symlink)
/usr/lib/libhdf5.so.200.0.0

No "libhdf5.so.103".

If I temporarily add a link named "libhdf5.so.103" pointing to the existing version, I get this, when opening the mesher dialog:
/usr/lib/libmedC.so.11.0.0: undefined symbol: H5Oget_info
User avatar
adrianinsaval
Veteran
Posts: 5553
Joined: Thu Apr 05, 2018 5:15 pm

Re: Can't create mesh with standard mesher anymore

Post by adrianinsaval »

I get no such error. When did you last build med? maybe it was built against an older version of hdf5. Try doing a clean build of med and then freecad.
User avatar
sgrogan
Veteran
Posts: 6499
Joined: Wed Oct 22, 2014 5:02 pm

Re: Can't create mesh with standard mesher anymore

Post by sgrogan »

neo2001 wrote: Tue Jun 09, 2020 8:14 am hdf5 1.12.0-2
I think the answer in your original link https://aur.archlinux.org/packages/free ... ent-743442 offers the clue.
If downgrading didn't work then it may be a packaging issue in AUR.
FreeCAD is known to work with hdf5 1.10.6 using this external SMESH fork https://github.com/LaughlinResearch/SMESH
FreeCAD is also known to work with hdf5 1.10.0 using FreeCAD's internal SMESH.

So the question is does MED need to be ported to hdf5 1.12 or does FreeCAD's internal SMESH need to be ported to hdf5 1.12?
"fight the good fight"
User avatar
adrianinsaval
Veteran
Posts: 5553
Joined: Thu Apr 05, 2018 5:15 pm

Re: Can't create mesh with standard mesher anymore

Post by adrianinsaval »

I'm using these in manjaro with a slightly modified freecad-git PKGBUILD:
med-openmpi 4.0.0-3
hdf5-openmpi 1.12.0-2

I don't get that problem so maybe no porting is really needed.
neo2001
Posts: 34
Joined: Wed Oct 23, 2019 12:25 pm

Re: Can't create mesh with standard mesher anymore

Post by neo2001 »

adrianinsaval wrote: Tue Jun 09, 2020 11:49 pm I'm using these in manjaro with a slightly modified freecad-git PKGBUILD:
med-openmpi 4.0.0-3
hdf5-openmpi 1.12.0-2

I don't get that problem so maybe no porting is really needed.
Thank you for the hint! I've tried that and it does work for me, too!

No idea if this is real permanent solution, but at least I can create meshes again. :-)
User avatar
adrianinsaval
Veteran
Posts: 5553
Joined: Thu Apr 05, 2018 5:15 pm

Re: Can't create mesh with standard mesher anymore

Post by adrianinsaval »

Was the solution rebuilding regular med or did you need the openmpi version?
Post Reply