Easifem Classes
note
Before installing the easifemClasses library please make sure that you have installed
Building from sourceβ
EASIFEM CLI (recommended method)β
You can install easifemClasses by using the command line application.
easifem install classes
Using CMakeβ
EASIFEM uses CMake build system. To manually install easifem from the source we need to perform following tasks.
- Download the source code from git repository.
- Configuration the project by using CMake.
- Build by using CMake.
- Install by using CMake.
- Git+https
- Git+ssh
- GitHub CLI
- β’
git clone https://github.com/vickysharma0812/easifem-classes.git classes
git clone git@github.com:vickysharma0812/easifem-classes.git classes
gh repo clone vickysharma0812/easifem-classes classes
After downloading the source code, enter the source directory π, and make a build directory.
cd classes
mkdir ./build
To configure the easifemClasses library you can define following variables:
| Variable | Type | Options | Default |
|---|---|---|---|
USE_OpenMP | BOOL | ON, OFF | ON |
CMAKE_BUILD_TYPE | STRING | Release, Debug | Release |
BUILD_SHARED_LIBS | BOOL | ON, OFF | ON |
CMAKE_INSTALL_PREFIX | PATH | Please specify | $EASIFEM_CLASSES |
USE_GMSH_SDK | BOOL | ON, OFF | OFF |
Click here to know about the configuration options π
- USE_OpenMP
- CMAKE_BUILD_TYPE
- BUILD_SHARED_LIBS
- CMAKE_INSTALL_PREFIX
- β’
USE_OpenMPif set toON, theeasifemClasseslibrary is built withOpenMPwith shared memory parallelization.- The default value is
ON - You can set this option by using
--D USE_OpenMP:BOOL=ON.
- If
CMAKE_BUILD_TYPEis set toRelease, then highly optimized version ofeasifemBaseis built without any debugging facility. - If
CMAKE_BUILD_TYPEis set toDebug, then some optimization is removed to allow debugging. - The default value is
Release - You can set this option by using
--D CMAKE_BUILD_TYPE:STRING=Release.
- If
BUILD_SHARED_LIBSis set toON, then position independent code (PIC) shared library will be built. Otherwise, a static library will be built. - The default value is
ON - You can set this option by using
--D BUILD_SHARED_LIBS:BOOL=ON.
CMAKE_INSTALL_PREFIXis aPATHoption, which specifies the location of file system whereeasifemBaselibrary will be installed. If you have set the environment variables correctly then you can specify it to$EASIFEM_BASE, which is given by$EASIFEM_INSTALL_DIR/easifem/base/- You can set this option by using
--D CMAKE_INSTALL_PREFIX:PATH=$EASIFEM_BASE.
An example of configuration step is given below:
export EASIFEM_CLASSES=${HOME}/.local/easifem/classes
cmake -G "Ninja" -S ./ -B ./build \
-D USE_OpenMP:BOOL=ON \
-D CMAKE_BUILD_TYPE:STRING=Release \
-D BUILD_SHARED_LIBS:BOOL=ON \
-D CMAKE_INSTALL_PREFIX:PATH=${EASIFEM_CLASSES} \
-D USE_GMSH_SDK:BOOL=OFF
After configuration, you can build and install the library by using:
cmake --build ./build --target --install