[Gmsh] gmsh crashes after OS X El Capitan

j s j.s4403 at gmail.com
Mon Oct 19 22:16:19 CEST 2015


On 10/1/15 7:51 AM, Bahman Aboulhasanzadeh wrote:
> Hi,
>
> After installation of the new OS X El Capitan, gmsh does not work 
> properly. It works if you just load a mesh.But if you want to 
> post-process the data when you are loading the data along the mesh, it 
> fails with the following messages:
>
> >> gmsh mesh.msh *.pos
>
> dyld: lazy symbol binding failed: Symbol not found: _dgetrf_
>   Referenced from: /Applications/Gmsh.app/Contents/MacOS/gmsh
>   Expected in: 
> /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libBLAS.dylib
>
> dyld: Symbol not found: _dgetrf_
>   Referenced from: /Applications/Gmsh.app/Contents/MacOS/gmsh
>   Expected in: 
> /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libBLAS.dylib
>
> Trace/BPT trap: 5

It looks like the solution to the issues is to change the minimum 
version for the Mac OS X.  On my Yosemite system (10.10):
$ nm /usr/lib/libblas.dylib  | grep dgetrf
000000000001114b T $ld$hide$os10.10$_dgetrf
000000000001114b T $ld$hide$os10.10$_dgetrf_
000000000001114b T $ld$hide$os10.7$_dgetrf
000000000001114b T $ld$hide$os10.7$_dgetrf_
000000000001114b T $ld$hide$os10.8$_dgetrf
000000000001114b T $ld$hide$os10.8$_dgetrf_
000000000001114b T $ld$hide$os10.9$_dgetrf
000000000001114b T $ld$hide$os10.9$_dgetrf_
00000000000167a0 T _dgetrf
00000000000167a0 T _dgetrf_

I saw in:
utils/nightly/gmsh_mac.ctest:set(OPT "${OPT} 
-DCMAKE_CXX_FLAGS=-mmacosx-version-min=10.6")

If that version minimum version is changed to 10.7 or higher, then 
dgetrf will be looked for in lapack instead of blas on an El Capitan 
system.  That flag would need to be passed to the linker as well.



>
>
>  Anybody knows how to fix it?
>
> Thanks
>
>
> _______________________________________________
> gmsh mailing list
> gmsh at geuz.org
> http://www.geuz.org/mailman/listinfo/gmsh