Hi,

I can't immediately comment on why the header is not found, there are a lot of 
moving pieces.

But one workaround to try might be to configure qtwebengine with 
-no-feature-webengine-qt-harfbuzz . 
I think that should cause the build system to try and use the chromium provided 
harfbuzz sources, rather than the qt ones.

Otherwise, I'd suggest filing a bug report against the webengine component on 
the qt bug tracker, with all the details on how you're building qt.

> On 14. Jul 2025, at 18:47, Marcel Gotsch via Interest 
> <interest@qt-project.org> wrote:
> 
> Hi,
> 
> we're trying to build Qt 6.9.1 from sources, but face an issue on macOS. 
> Somehow the harfbuzz includes aren't found when building qtwebengine.
> 
> I've already started to debug the CMake code involved and what I was able to 
> find out so far is that qtwebengine uses the HarfbuzzPrivate interface 
> library to determine the INTERFACE_INCLUDE_DIRECTORIES which are then 
> injected into some generated GN scripts. The includes match the list 
> mentioned in the compiler error below, but they don't the necessary 
> qtbase/3rdparty/harfbuzz-ng/include/harfbuzz path. The HarfbuzzPrivate 
> library is defined purely by qt_internal_add_3rdparty_header_module, which 
> doesn't add the necessary include directories. We're a bit lost at the moment 
> how this is supposed to work. 
> 
> Any help is much appreciated!
> 
> Here's the exact compiler error:
> 
> FAILED: obj/third_party/freetype/freetype_source/autofit.o 
> ../../../../../../../../../../../Applications/Xcode-v15.4.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang
>  -MMD -MF obj/third_party/freetype/freetype_source/autofit.o.d 
> -DHAVE_UNISTD_H -DHAVE_FCNTL_H -DFT2_BUILD_LIBRARY -DOFFICIAL_BUILD 
> -DTOOLKIT_QT -DCR_XCODE_VERSION=1620 
> -D_LIBCPP_HARDENING_MODE=_LIBCPP_HARDENING_MODE_NONE -DNDEBUG -DNVALGRIND 
> -DDYNAMIC_ANNOTATIONS_ENABLED=0 
> -DFT_CONFIG_MODULES_H=\"freetype-custom/freetype/config/ftmodule.h\" 
> -DFT_CONFIG_OPTIONS_H=\"freetype-custom/freetype/config/ftoption.h\" 
> -DPDFIUM_REQUIRED_MODULES -DCHROMIUM_RESTRICT_VISIBILITY 
> -I../../../../../../libs/qt5/qtwebengine/src/3rdparty/chromium/third_party/freetype/src/include/freetype/config
>  -Igen -I../../../../../../libs/qt5/qtwebengine/src/3rdparty/chromium 
> -I/Volumes/build/jenkins-build/8acaa1/sources/build-Qt-6.9.1-R1-macx-clang-static/qtbase/include
>  
> -I/Volumes/build/jenkins-build/8acaa1/sources/build-Qt-6.9.1-R1-macx-clang-static/qtbase/include/QtHarfbuzz
>  -I/Volumes/
 build/jenkins-build/8acaa1/sources/libs/qt5/qtbase/src/3rdparty/harfbuzz-ng 
-I/Volumes/build/jenkins-build/8acaa1/sources/build-Qt-6.9.1-R1-macx-clang-static/qtbase/src/3rdparty/harfbuzz-ng
 
-I../../../../../../libs/qt5/qtwebengine/src/3rdparty/chromium/third_party/freetype/include
 
-I../../../../../../libs/qt5/qtwebengine/src/3rdparty/chromium/third_party/freetype/include/freetype-custom
 
-I../../../../../../libs/qt5/qtwebengine/src/3rdparty/chromium/third_party/freetype/src/include
 
-I../../../../../../libs/qt5/qtwebengine/src/3rdparty/chromium/third_party/zlib 
-fno-delete-null-pointer-checks -fno-ident -fno-strict-aliasing 
-fstack-protector -Wno-unknown-argument -Wno-unknown-attributes 
-Wno-unknown-warning-option -Wno-ignored-attributes 
-Wno-predefined-identifier-outside-function -Wno-self-assign 
-Wno-unknown-pragmas -fcolor-diagnostics -fmerge-all-constants 
-fno-sized-deallocation --target=x86_64-apple-macos -O2 -fno-math-errno 
-fno-omit-frame-pointer -g0 -isysroot ../../../../../..
 
/../../../../../Applications/Xcode-v16.2.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.2.sdk
 -mmacos-version-min=13.0 -fvisibility=hidden -Wheader-hygiene 
-Wstring-conversion -Wtautological-overlap-compare -Wall -Wno-unused-variable 
-Wno-c++11-narrowing -Wno-unused-but-set-variable -Wno-misleading-indentation 
-Wunguarded-availability -Wno-missing-field-initializers -Wno-unused-parameter 
-Wno-psabi -Wloop-analysis -Wno-unneeded-internal-declaration 
-Wno-deprecated-declarations -Wno-cast-function-type -Wno-vla-extension 
-Wno-thread-safety-reference-return -Wno-deprecated-declarations 
-Wno-unused-function -isystem/opt/homebrew/opt/libpng/include/libpng16 -std=c11 
-c 
../../../../../../libs/qt5/qtwebengine/src/3rdparty/chromium/third_party/freetype/src/src/autofit/autofit.c
 -o obj/third_party/freetype/freetype_source/autofit.o
> In file included from 
> ../../../../../../libs/qt5/qtwebengine/src/3rdparty/chromium/third_party/freetype/src/src/autofit/autofit.c:21:
> In file included from 
> ../../../../../../libs/qt5/qtwebengine/src/3rdparty/chromium/third_party/freetype/src/src/autofit/ft-hb.c:32:
> ../../../../../../libs/qt5/qtwebengine/src/3rdparty/chromium/third_party/freetype/src/src/autofit/ft-hb.h:30:10:
>  fatal error: 'hb.h' file not found
> #include <hb.h>
>          ^~~~~~
> 1 error generated.
> 
> Best,
> 
> Marcel Gotsch
> _______________________________________________
> Interest mailing list
> Interest@qt-project.org
> https://lists.qt-project.org/listinfo/interest

_______________________________________________
Interest mailing list
Interest@qt-project.org
https://lists.qt-project.org/listinfo/interest

Reply via email to