diff --git a/src/libcamera/utils.cpp b/src/libcamera/utils.cpp
index a96ca7f40cbd..fbadf350908a 100644
--- a/src/libcamera/utils.cpp
+++ b/src/libcamera/utils.cpp
@@ -386,7 +386,16 @@ std::string libcameraBuildPath()
 	if (ret == 0)
 		return std::string();
 
-	return dirname(info.dli_fname) + "/../../";
+	std::string path = dirname(info.dli_fname) + "/../../";
+
+	char *real = realpath(path.c_str(), nullptr);
+	if (!real)
+		return std::string();
+
+	path = real;
+	free(real);
+
+	return path + "/";
 }
 
 /**
