diff --git a/src/Model/Except.py b/src/Model/Except.py
index ef45ffd0e47af08e2eac23f280e81e3e0855629b..ce741bf8d5d9ab260fc4b8838c296809f6d92851 100644
--- a/src/Model/Except.py
+++ b/src/Model/Except.py
@@ -179,3 +179,38 @@ class ClipboardFormatError(ExeceptionWithMessageBox):
 
     def message(self):
         return self.msg
+
+
+class ExternFileMissingError(ExeceptionWithMessageBox):
+    def __init__(self, module="mage", filename="libbief", path="??/libbief.so",
+                 src_except=None):
+        super(ExternFileMissingError, self).__init__(
+            title=_translate(
+                "Exception", "External file dependence is missing"
+            )
+        )
+
+        self.msg = _translate(
+            "Exception",
+            "'@file' is missing for module @module:\n'@path'"
+        )
+        self.msg = self.msg.replace("@file", filename)
+        self.msg = self.msg.replace("@module", module)
+        self.msg = self.msg.replace("@path", path)
+
+        if src_except is not None:
+            self.msg = self.msg + "\n\n" + f"Exception: {src_except}"
+
+        self.alert()
+
+    def __str__(self):
+        return self.msg
+
+    def header(self):
+        return _translate("Exception", "External file dependence is missing")
+
+    def short_message(self):
+        return _translate("Exception", "External file dependence is missing")
+
+    def message(self):
+        return self.msg
diff --git a/src/View/Geometry/Window.py b/src/View/Geometry/Window.py
index c079687b3018e3971c920c8b8b07a1f10e359ba2..38db6db9ee5c1509ae36fca6809e094fc93c2e61 100644
--- a/src/View/Geometry/Window.py
+++ b/src/View/Geometry/Window.py
@@ -23,7 +23,7 @@ import pathlib
 import logging
 
 from copy import deepcopy
-from tools import timer, trace
+from tools import timer, trace, logger_exception
 
 from PyQt5 import QtWidgets
 from PyQt5.QtGui import (
@@ -40,6 +40,8 @@ from PyQt5.QtWidgets import (
     QLabel, QAbstractItemView,
 )
 
+from Model.Except import ExternFileMissingError
+
 from View.Tools.PamhyrWindow import PamhyrWindow
 from View.Tools.Plot.PamhyrToolbar import PamhyrPlotToolbar
 from View.Tools.Plot.PamhyrCanvas import MplCanvas
@@ -255,8 +257,23 @@ class GeometryWindow(PamhyrWindow):
         self.tableView.model().blockSignals(False)
 
     def edit_meshing(self):
-        mesher = MeshingWithMage()
-        self._table.meshing(mesher, -1)
+        try:
+            self._edit_meshing()
+        except Exception:
+            return
+
+    def _edit_meshing(self):
+        try:
+            mesher = MeshingWithMage()
+            self._table.meshing(mesher, -1)
+        except Exception as e:
+            logger_exception(e)
+            raise ExternFileMissingError(
+                module="mage",
+                filename="libbief",
+                path=MeshingWithMage._lib_path(),
+                src_except=e
+            )
 
     pyqtSlot(bool)
 
diff --git a/src/tools.py b/src/tools.py
index e1ade0098ec851b0afb8a035452cf53561ed5443..baf130e421bf3b379064863d5ee6052e57e0f293 100644
--- a/src/tools.py
+++ b/src/tools.py
@@ -69,10 +69,10 @@ def logger_color_reset():
 def logger_exception(exception):
     logger.error(
         f"[{logger_color_red()}ERROR{logger_color_reset()}] " +
-        f"{logger_color_red()}{e}{logger_color_reset()}"
+        f"{logger_color_red()}{exception}{logger_color_reset()}"
     )
     logger.debug(
-        f"{logger_color_blue()}{e}{logger_color_reset()}\n" +
+        f"{logger_color_blue()}{exception}{logger_color_reset()}\n" +
         f"{logger_color_red()}{traceback.format_exc()}{logger_color_reset()}"
     )