This is working fine on a manylinux2014 machine with juce7 branch, but it fails now on juce8:
juce_graphics.cpp fatal error ft2build.h No such file or directory
does anything changed there ?
This is working fine on a manylinux2014 machine with juce7 branch, but it fails now on juce8:
juce_graphics.cpp fatal error ft2build.h No such file or directory
does anything changed there ?
I was able to fix it
What was the issue out of interest?
In some linux distros ft2build.h is located at /usr/include/freetype2 maybe it would be great if juce could detect it with __has_include() and use the one that is found
Could you give an example of a distro that does that please? Just so if we take a look we can easily reproduce. Thanks.
I will be likely switching over to a more recent one tho
I’m still getting troubles building juce8 on older distros:
-- Building juceaide
CMake Error at JUCE/extras/Build/juceaide/CMakeLists.txt:143 (message):
Failed to build juceaide
[ 10%] Building CXX object
extras/Build/juceaide/CMakeFiles/juceaide.dir/Main.cpp.o
[ 20%] Building CXX object
extras/Build/juceaide/CMakeFiles/juceaide.dir/__/juce_build_tools/juce_build_tools.cpp.o
[ 30%] Building CXX object
extras/Build/juceaide/CMakeFiles/juceaide.dir/__/__/__/modules/juce_gui_basics/juce_gui_basics.cpp.o
[ 40%] Building CXX object
extras/Build/juceaide/CMakeFiles/juceaide.dir/__/__/__/modules/juce_graphics/juce_graphics.cpp.o
In file included from
/project/JUCE/modules/juce_graphics/juce_graphics.cpp:198:
/project/JUCE/modules/juce_graphics/native/juce_Fonts_freetype.cpp:37:10:
error: #include expects "FILENAME" or <FILENAME>
37 | #include FT_COLOR_H
| ^~~~~~~~~~
gmake[2]: ***
this path should be returned by pkgconf --cflags gtk+-x11-3.0 do you have this devel package installed? looks like it’s mandatory now
It doesn’t change much:
...
-- Found PkgConfig: /usr/bin/pkg-config (found version "1.4.2")
-- Checking for module 'alsa'
-- Found alsa, version 1.2.10
-- Checking for modules 'freetype2;fontconfig'
-- Found freetype2, version 22.1.16
-- Found fontconfig, version 2.13.1
-- Checking for module 'gl'
-- Found gl, version 1.2
-- Checking for module 'libcurl'
-- Found libcurl, version 7.61.1
-- Checking for modules 'webkit2gtk-4.0;gtk+-x11-3.0'
-- Package 'webkit2gtk-4.0', required by 'virtual:world', not found
-- Configuring juceaide
-- Building juceaide
CMake Error at JUCE/extras/Build/juceaide/CMakeLists.txt:143 (message):
Failed to build juceaide
[ 10%] Building CXX object
extras/Build/juceaide/CMakeFiles/juceaide.dir/Main.cpp.o
[ 20%] Building CXX object
extras/Build/juceaide/CMakeFiles/juceaide.dir/__/juce_build_tools/juce_build_tools.cpp.o
[ 30%] Building CXX object
extras/Build/juceaide/CMakeFiles/juceaide.dir/__/__/__/modules/juce_gui_basics/juce_gui_basics.cpp.o
[ 40%] Building CXX object
extras/Build/juceaide/CMakeFiles/juceaide.dir/__/__/__/modules/juce_graphics/juce_graphics.cpp.o
In file included from
/project/JUCE/modules/juce_graphics/juce_graphics.cpp:198:
/project/JUCE/modules/juce_graphics/native/juce_Fonts_freetype.cpp:37:10:
error: #include expects "FILENAME" or <FILENAME>
37 | #include FT_COLOR_H
| ^~~~~~~~~~
gmake[2]: ***
[extras/Build/juceaide/CMakeFiles/juceaide.dir/build.make:118:
extras/Build/juceaide/CMakeFiles/juceaide.dir/__/__/__/modules/juce_graphics/juce_graphics.cpp.o]
Error 1
gmake[1]: *** [CMakeFiles/Makefile2:131:
extras/Build/juceaide/CMakeFiles/juceaide.dir/all] Error 2
gmake: *** [Makefile:136: all] Error 2
What if you install webkit2gtk devel? There is inconsistency with versions, webkit2gtk-4.0 is deprecated and perhaps you have to change it to 4.1 in extras/Build/CMake/JUCEUtils.cmake and install webkit2gtk-4.1 devel package, like described here: [Bug]: Switch from webkit2gtk 4.0 to 4.1 · Issue #1377 · juce-framework/JUCE · GitHub
but why should i need this ? i disabled the webviews thing from my cmake configuration
same thing
-- Found PkgConfig: /usr/bin/pkg-config (found version "1.4.2")
-- Checking for module 'alsa'
-- Found alsa, version 1.2.10
-- Checking for modules 'freetype2;fontconfig'
-- Found freetype2, version 22.1.16
-- Found fontconfig, version 2.13.1
-- Checking for module 'gl'
-- Found gl, version 1.2
-- Checking for module 'libcurl'
-- Found libcurl, version 7.61.1
-- Checking for modules 'webkit2gtk-4.0;gtk+-x11-3.0'
-- Found webkit2gtk-4.0, version 2.42.5
-- Found gtk+-x11-3.0, version 3.22.30
-- Configuring juceaide
-- Building juceaide
CMake Error at JUCE/extras/Build/juceaide/CMakeLists.txt:143 (message):
Failed to build juceaide
[ 10%] Building CXX object
extras/Build/juceaide/CMakeFiles/juceaide.dir/Main.cpp.o
[ 20%] Building CXX object
extras/Build/juceaide/CMakeFiles/juceaide.dir/__/juce_build_tools/juce_build_tools.cpp.o
[ 30%] Building CXX object
extras/Build/juceaide/CMakeFiles/juceaide.dir/__/__/__/modules/juce_gui_basics/juce_gui_basics.cpp.o
[ 40%] Building CXX object
extras/Build/juceaide/CMakeFiles/juceaide.dir/__/__/__/modules/juce_graphics/juce_graphics.cpp.o
In file included from
/project/JUCE/modules/juce_graphics/juce_graphics.cpp:198:
/project/JUCE/modules/juce_graphics/native/juce_Fonts_freetype.cpp:37:10:
error: #include expects "FILENAME" or <FILENAME>
37 | #include FT_COLOR_H
| ^~~~~~~~~~
gmake[2]: ***
[extras/Build/juceaide/CMakeFiles/juceaide.dir/build.make:118:
extras/Build/juceaide/CMakeFiles/juceaide.dir/__/__/__/modules/juce_graphics/juce_graphics.cpp.o]
Error 1
Well i don’t think webkit2gtk-4.1 is available in the distro i’m targeting (based off RHEL8), but not sure if this will make any difference, since this code is around freetype includes in juce
I got similar error (missing freetype includes) and had to add this package to build JUCE8. It was on openSUSE. I’ll check it with Fedora.
I think that since adding WebUI in JUCE8 juceide wants this package.
juce seems to check for 4.0 (Checking for modules 'webkit2gtk-4.0...), does the issue mean that i have to install 4.1 instead ?
It should work with 4.0, if you have it.
The issue means that JUCE wants 4.1 here WebBrowserComponent: Linux: Add support for libwebkit2gtk-4.1 · juce-framework/JUCE@2516ad8 · GitHub but still looks for 4.0 here JUCE/extras/Build/CMake/JUCEUtils.cmake at 61a03097ec9e01693c87ac71935e97b9714cff1a · juce-framework/JUCE · GitHub
But then i don’t understand the unless 'JUCE_WEB_BROWSER=0' which i’m setting. JUCE should not rely on these dependencies being present if one doesn’t want the web browser
'JUCE_WEB_BROWSER=0' doesn’t affect juceide afaik, as it’s not a JUCE app/plugin.
the error throws when you compile the juceide binary
Well, then it’s a problem of juceaide and should be fixed. Why juceaide needs a web browser or even compile fonts code ?!
We’re looking into this problem, but I don’t believe the webkitgtk library version change has anything to do with these compile failures.