Undefined reference to hb_buffer_create

I rebuilt the HarfBuzz (2.4.0 and 2.6.2) library and the FreeType2 library (both 2.10.0 and 2.10.1), and took care to avoid the circular dependency between HarfBuzz and FreeType2. I did this by building FreeType2 without HarfBuzz, built HarfBuff with Freetype2 support, and then rebuilt FreeType2 with HarfBuzz support.

However, when I try to build the UE4 sources, I get the following error, with my libfreetype_fPIC.a library. The library that is checked into the git works, but the one that I built from sources, doesn’t work. I tried this with the existing versions of HarfBuzz-2.4.0 and FreeType2-2.10.0 as well as a combination using the later versions of HarfBuzz-2.6.2 and FreeType2-2.10.1, after modifying the *.cs files for the two libraries.

How is the libfreetype_fPIC.a library created?



/mnt/storage/mount/project/software/library/unrealengine-4.24-master/Engine/Extras/ThirdPartyNotUE/SDKs/HostLinux/Linux_x64/v15_clang-8.0.1-centos7/x86_64-unknown-linux-gnu/bin/x86_64-unknown-linux-gnu-ld: /mnt/storage/mount/project/software/library/unrealengine-4.24-master/Engine/Source/ThirdParty/FreeType2/FreeType2-2.10.1/lib/Linux/x86_64-unknown-linux-gnu/libfreetype_fPIC.a(autofit.c.o): in function `af_cjk_metrics_init':
autofit.c:(.text.af_cjk_metrics_init+0x5c): undefined reference to `hb_buffer_create'
/mnt/storage/mount/project/software/library/unrealengine-4.24-master/Engine/Extras/ThirdPartyNotUE/SDKs/HostLinux/Linux_x64/v15_clang-8.0.1-centos7/x86_64-unknown-linux-gnu/bin/x86_64-unknown-linux-gnu-ld: autofit.c:(.text.af_cjk_metrics_init+0x174): undefined reference to `hb_buffer_get_glyph_infos'
/mnt/storage/mount/project/software/library/unrealengine-4.24-master/Engine/Extras/ThirdPartyNotUE/SDKs/HostLinux/Linux_x64/v15_clang-8.0.1-centos7/x86_64-unknown-linux-gnu/bin/x86_64-unknown-linux-gnu-ld: autofit.c:(.text.af_cjk_metrics_init+0x182): undefined reference to `hb_buffer_get_glyph_positions'
/mnt/storage/mount/project/software/library/unrealengine-4.24-master/Engine/Extras/ThirdPartyNotUE/SDKs/HostLinux/Linux_x64/v15_clang-8.0.1-centos7/x86_64-unknown-linux-gnu/bin/x86_64-unknown-linux-gnu-ld: autofit.c:(.text.af_cjk_metrics_init+0x782): undefined reference to `hb_buffer_destroy'
/mnt/storage/mount/project/software/library/unrealengine-4.24-master/Engine/Extras/ThirdPartyNotUE/SDKs/HostLinux/Linux_x64/v15_clang-8.0.1-centos7/x86_64-unknown-linux-gnu/bin/x86_64-unknown-linux-gnu-ld: autofit.c:(.text.af_cjk_metrics_init+0x7ac): undefined reference to `hb_buffer_create'
/mnt/storage/mount/project/software/library/unrealengine-4.24-master/Engine/Extras/ThirdPartyNotUE/SDKs/HostLinux/Linux_x64/v15_clang-8.0.1-centos7/x86_64-unknown-linux-gnu/bin/x86_64-unknown-linux-gnu-ld: autofit.c:(.text.af_cjk_metrics_init+0x7f4): undefined reference to `hb_buffer_get_glyph_infos'
/mnt/storage/mount/project/software/library/unrealengine-4.24-master/Engine/Extras/ThirdPartyNotUE/SDKs/HostLinux/Linux_x64/v15_clang-8.0.1-centos7/x86_64-unknown-linux-gnu/bin/x86_64-unknown-linux-gnu-ld: autofit.c:(.text.af_cjk_metrics_init+0x802): undefined reference to `hb_buffer_get_glyph_positions'
/mnt/storage/mount/project/software/library/unrealengine-4.24-master/Engine/Extras/ThirdPartyNotUE/SDKs/HostLinux/Linux_x64/v15_clang-8.0.1-centos7/x86_64-unknown-linux-gnu/bin/x86_64-unknown-linux-gnu-ld: autofit.c:(.text.af_cjk_metrics_init+0x85c): undefined reference to `hb_buffer_destroy'