Installation#

Requirements#

Basically, XLiFE++ compilation depends on the cross-platform builder Cmake.

See also

If you need to learn how to use cmake, please go to Cmake tutorial. Keep in mind that running Cmake several times is not a problem. Indeed, as far as external dependencies are concerned, Cmake is supposed to find a wide range of possible configurations, but not every one of them of course!

Another way to install XLiFE++ is to download a Docker container (like a virtual machine containing everything to build and run XLiFE++). It is cross-platform. To know how to install and use XLiFE++ this way, please read Install from Docker image.

Of course, you need a C++ compiler. To install a proper 64bits compiler on Windows, see How to install MinGW 64 bits on Windows.

Third-party extensions#

To use XLiFE++ full capabilities, you may need some external libraries to activate extensions:

  • The main mesh engine needs Gmsh. It is not a strong dependency insofar as you just have to tell XLiFE++ where Gmsh executable is.

  • Still for the mesh engine, you may also need OpenCASCADE. Instead of using it through Gmsh, you may want/need to use it directly in XLiFE++.

  • To use it as eigen solver, XLiFE++ provides its own Arpack distribution. This internal distribution is patched to work with recent compilers, but you may prefer using another distribution. See How to install Arpack library for details and recommendations.

  • To use it as direct solver, you may install UmfPack. See How to install UmfPack library for details and recommendations.

  • To use it as GPU solver, you may install Magma.

  • To visualize solutions of your programs using XLiFE++, you may install Gmsh, Paraview, Matlab or Octave.

Hint

XLiFE++ provides 2 external libraries: Eigen, essentially for SVD, and Amos for Bessel/Hankel functions with complex arguments.

Guides#