diff --git a/src/libespeak-ng/mbrowrap.c b/src/libespeak-ng/mbrowrap.c
index e3e4b702..de06dd21 100644
--- a/src/libespeak-ng/mbrowrap.c
+++ b/src/libespeak-ng/mbrowrap.c
@@ -209,7 +209,7 @@ static int start_mbrola(const char *voice_path)
 		signal(SIGTERM, SIG_IGN);
 
 		snprintf(charbuf, sizeof(charbuf), "%g", mbr_volume);
-		execlp("mbrola", "mbrola", "-e", "-v", charbuf,
+		execlp("@mbrola/bin/mbrola@", "mbrola", "-e", "-v", charbuf,
 		       voice_path, "-", "-.wav", (char *)NULL);
 		/* if execution reaches this point then the exec() failed */
 		snprintf(mbr_errorbuf, sizeof(mbr_errorbuf),
diff --git a/src/libespeak-ng/synth_mbrola.c b/src/libespeak-ng/synth_mbrola.c
index 5f9b0458..26a05635 100644
--- a/src/libespeak-ng/synth_mbrola.c
+++ b/src/libespeak-ng/synth_mbrola.c
@@ -95,7 +95,7 @@ espeak_ng_STATUS LoadMbrolaTable(const char *mbrola_voice, const char *phtrans,
 	if (!load_MBR())
 		return ENS_MBROLA_NOT_FOUND;
 
-	sprintf(path, "%s/mbrola/%s", path_home, mbrola_voice);
+	sprintf(path, "%s/@mbrola@/%s", path_home, mbrola_voice);
 #if PLATFORM_POSIX
 	// if not found, then also look in
 	//   $data_dir/mbrola/xx, $data_dir/mbrola/xx/xx, $data_dir/mbrola/voices/xx
