1diff --git a/weasyprint/text/ffi.py b/weasyprint/text/ffi.py
2index b5a9cf2..9380a79 100644
3--- a/weasyprint/text/ffi.py
4+++ b/weasyprint/text/ffi.py
5@@ -444,25 +444,12 @@ if hasattr(os, 'add_dll_directory') and not hasattr(sys, 'frozen'): # pragma: n
6 with suppress((OSError, FileNotFoundError)):
7 os.add_dll_directory(dll_directory)
8
9-gobject = _dlopen(
10- ffi, 'libgobject-2.0-0', 'gobject-2.0-0', 'gobject-2.0',
11- 'libgobject-2.0.so.0', 'libgobject-2.0.dylib', 'libgobject-2.0-0.dll')
12-pango = _dlopen(
13- ffi, 'libpango-1.0-0', 'pango-1.0-0', 'pango-1.0', 'libpango-1.0.so.0',
14- 'libpango-1.0.dylib', 'libpango-1.0-0.dll')
15-harfbuzz = _dlopen(
16- ffi, 'libharfbuzz-0', 'harfbuzz', 'harfbuzz-0.0',
17- 'libharfbuzz.so.0', 'libharfbuzz.0.dylib', 'libharfbuzz-0.dll')
18-harfbuzz_subset = _dlopen(
19- ffi, 'libharfbuzz-subset-0', 'harfbuzz-subset', 'harfbuzz-subset-0.0',
20- 'libharfbuzz-subset.so.0', 'libharfbuzz-subset.0.dylib', 'libharfbuzz-subset-0.dll',
21- allow_fail=True)
22-fontconfig = _dlopen(
23- ffi, 'libfontconfig-1', 'fontconfig-1', 'fontconfig',
24- 'libfontconfig.so.1', 'libfontconfig.1.dylib', 'libfontconfig-1.dll')
25-pangoft2 = _dlopen(
26- ffi, 'libpangoft2-1.0-0', 'pangoft2-1.0-0', 'pangoft2-1.0',
27- 'libpangoft2-1.0.so.0', 'libpangoft2-1.0.dylib', 'libpangoft2-1.0-0.dll')
28+gobject = _dlopen(ffi, "@gobject@")
29+pango = _dlopen(ffi, "@pango@")
30+harfbuzz = _dlopen(ffi, "@harfbuzz@")
31+harfbuzz_subset = _dlopen(ffi, "@harfbuzz_subset@", allow_fail=True)
32+fontconfig = _dlopen(ffi, "@fontconfig@")
33+pangoft2 = _dlopen(ffi, "@pangoft2@")
34
35 gobject.g_type_init()
36