DlibDotNet: System.Runtime.InteropServices.SEHException (0x80004005): External component has thrown an exception.

System.Runtime.InteropServices.SEHException (0x80004005): External component has thrown an exception.

Windows 10 pro 64-bit (10.0, Build 17134) Intel® Core™ i5-8400 CPU @2.80ghz (6 CPUs), ~ 2.8ghz 24576 MB of RAM No separate graphics card

Microsoft Visual Studio Professional 2017 Version 15.9.3

dotnet core SDK 2.1.6

I publish my code, and I run it

Example code:

public static ShapePredictor _SP { get { if (_sp == null) { var path = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "ShapeModel", "shape_predictor_5_face_landmarks.dat"); _sp = ShapePredictor.Deserialize(path); } return _sp; } }

I worked fine in the “Debug” directory and under “Release\netcoreapp2.1\publish”, but I copied all the files in publish to my desktop . It reported an error。 If necessary, I can send you a copy of my complete code.

This problem has been bothering me for a long time and I’m not sure if it’s a (C++/CLI and standard C++) problem.

  • It would be nice to find out what the problem is and fix it.

About this issue

  • Original URL
  • State: closed
  • Created 5 years ago
  • Comments: 17 (9 by maintainers)

Most upvoted comments

FYI, you can build DlibDotNet.Native and DlibDotNet.Native.Dnn on system you want to let it run. Perhaps, it is easy. You can install development tools and latest cmake. Then you run BuildLinux.sh.

I was able to build and run the #80 program on CentOS 7.6.

Ok. It is not weird.

./libDlibDotNetNative.so: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.22' not found (required by ./libDlibDotNetNative.so)
        linux-vdso.so.1 =>  (0x00007ffe86198000)
        libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f3580966000)
        libX11.so.6 => /usr/lib/x86_64-linux-gnu/libX11.so.6 (0x00007f358062c000)
        libpng16.so.16 => not found
        libjpeg.so.8 => /usr/lib/x86_64-linux-gnu/libjpeg.so.8 (0x00007f35803d3000)
        libcblas.so.3 => /usr/lib/libcblas.so.3 (0x00007f35801b1000)
        liblapack.so.3 => /usr/lib/liblapack.so.3 (0x00007f357f9cd000)
        libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007f357f64b000)
        libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f357f342000)
        libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007f357f12c000)
        libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f357ed62000)
        /lib64/ld-linux-x86-64.so.2 (0x00007f3581fd7000)
        libxcb.so.1 => /usr/lib/x86_64-linux-gnu/libxcb.so.1 (0x00007f357eb40000)
        libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f357e93c000)
        libatlas.so.3 => /usr/lib/libatlas.so.3 (0x00007f357e39e000)
        libgfortran.so.3 => /usr/lib/x86_64-linux-gnu/libgfortran.so.3 (0x00007f357e073000)
        libblas.so.3 => /usr/lib/libblas.so.3 (0x00007f357de35000)
        libXau.so.6 => /usr/lib/x86_64-linux-gnu/libXau.so.6 (0x00007f357dc31000)
        libXdmcp.so.6 => /usr/lib/x86_64-linux-gnu/libXdmcp.so.6 (0x00007f357da2b000)
        libquadmath.so.0 => /usr/lib/x86_64-linux-gnu/libquadmath.so.0 (0x00007f357d7ec000)

You may install libpng and need to update GLIBCXX.

You can refer https://stackoverflow.com/questions/43070900/version-glibcxx-3-4-22-not-found

After install and update,

takuya@Ubuntu16-04-4:~/work/OpenSource/tmp/#80/bin/x64/Release/netcoreapp2.0/linux-x64/publish$ ldd libDlibDotNetNative.so
        linux-vdso.so.1 =>  (0x00007ffd41be3000)
        libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007fb075da8000)
        libX11.so.6 => /usr/lib/x86_64-linux-gnu/libX11.so.6 (0x00007fb075a6e000)
        libpng16.so.16 => /lib/x86_64-linux-gnu/libpng16.so.16 (0x00007fb07583d000)
        libjpeg.so.8 => /usr/lib/x86_64-linux-gnu/libjpeg.so.8 (0x00007fb0755e4000)
        libcblas.so.3 => /usr/lib/libcblas.so.3 (0x00007fb0753c2000)
        liblapack.so.3 => /usr/lib/liblapack.so.3 (0x00007fb074bde000)
        libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007fb074852000)
        libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007fb074549000)
        libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007fb074331000)
        libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007fb073f67000)
        /lib64/ld-linux-x86-64.so.2 (0x00007fb077419000)
        libxcb.so.1 => /usr/lib/x86_64-linux-gnu/libxcb.so.1 (0x00007fb073d45000)
        libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007fb073b41000)
        libz.so.1 => /lib/x86_64-linux-gnu/libz.so.1 (0x00007fb073927000)
        libatlas.so.3 => /usr/lib/libatlas.so.3 (0x00007fb073389000)
        libgfortran.so.3 => /usr/lib/x86_64-linux-gnu/libgfortran.so.3 (0x00007fb073058000)
        libblas.so.3 => /usr/lib/libblas.so.3 (0x00007fb072e1a000)
        libXau.so.6 => /usr/lib/x86_64-linux-gnu/libXau.so.6 (0x00007fb072c16000)
        libXdmcp.so.6 => /usr/lib/x86_64-linux-gnu/libXdmcp.so.6 (0x00007fb072a10000)
        libquadmath.so.0 => /usr/lib/x86_64-linux-gnu/libquadmath.so.0 (0x00007fb0727d0000)

It works fine!!!