diff --git a/meta/recipes-core/systemd/dlopen-deps.inc b/meta/recipes-core/systemd/dlopen-deps.inc
index 2d43f2dcb8e..15f811de126 100644
--- a/meta/recipes-core/systemd/dlopen-deps.inc
+++ b/meta/recipes-core/systemd/dlopen-deps.inc
@@ -77,7 +77,17 @@ python package_generate_dlopen_deps() {
                                 found = True
                                 break
                         if not found:
-                            bb.warn(f"cannot find any provider for dlopen dependency: {dep['soname']}")
+                            # A missing provider only matters for "required" dlopen
+                            # dependencies. "recommended"/"suggested" ones are optional
+                            # (they map to RRECOMMENDS) and legitimately have no provider
+                            # on some configurations - e.g. systemd suggests libintl.so.8,
+                            # which does not exist on musl where the gettext symbols live
+                            # in libc. Only warn for required deps; note the rest.
+                            msg = f"cannot find any provider for dlopen dependency: {dep['soname']}"
+                            if dep["priority"] == "required":
+                                bb.warn(msg)
+                            else:
+                                bb.note(msg)
                 except oe.qa.NotELFFileError as e:
                     bb.note(f"Cannot extract ELF notes: {e}")
                     pass
