[MacPorts] #41572: root: unknown type name 'FT_Glyph'; did you mean 'FTGlyph'
#41572: root: unknown type name 'FT_Glyph'; did you mean 'FTGlyph' ---------------------+---------------------- Reporter: mojca@… | Owner: jonesc@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: Keywords: | Port: root ---------------------+---------------------- Compiling the latest Root 5.34.12 (on top of the latest FT 2.5.1 ;) the compilation on 10.7 fails with: {{{ /usr/bin/clang++ -O2 -m64 -pipe -Wshadow -W -Wall -Woverloaded-virtual -fsigned-char -fno-common -Iinclude -DR__HAVE_CONFIG -pthread -o graf2d/graf/src/TPaveLabel.o -c /path/to/work/root/graf2d/graf/src/TPaveLabel.cxx In file included from /path/to/work/root/graf2d/graf/src/TMathText.cxx:15: include/TTF.h:51:4: error: unknown type name 'FT_Glyph'; did you mean 'FTGlyph'? FT_Glyph fImage; // glyph image ^~~~~~~~ FTGlyph include/ftglyph.h:25:19: note: 'FTGlyph' declared here class FTGL_EXPORT FTGlyph ^ In file included from /path/to/work/root/graf2d/graf/src/TMathText.cxx:15: include/TTF.h:51:15: error: field type 'FTGlyph' is an abstract class FT_Glyph fImage; // glyph image ^ include/ftglyph.h:49:32: note: unimplemented pure virtual method 'Render' in 'FTGlyph' virtual const FTPoint& Render( const FTPoint& pen) = 0; ^ bin/rmkdepend -R -fgraf2d/graf/src/TPaveStats.d -Y -w 1000 -- -m64 -pipe -Wshadow -W -Wall -Woverloaded-virtual -fsigned-char -fno-common -Iinclude -DR__HAVE_CONFIG -pthread -D__cplusplus -- /path/to/work/root/graf2d/graf/src/TPaveStats.cxx /usr/bin/clang++ -O2 -m64 -pipe -Wshadow -W -Wall -Woverloaded-virtual -fsigned-char -fno-common -Iinclude -DR__HAVE_CONFIG -pthread -o graf2d/graf/src/TPaveStats.o -c /path/to/work/root/graf2d/graf/src/TPaveStats.cxx 2 errors generated. make: *** [graf2d/graf/src/TMathText.o] Error 1 make: *** Waiting for unfinished jobs.... make: Leaving directory `/path/to/work/root' }}} -- Ticket URL: <https://trac.macports.org/ticket/41572> MacPorts <http://www.macports.org/> Ports system for OS X
#41572: root: unknown type name 'FT_Glyph'; did you mean 'FTGlyph' ----------------------+---------------------- Reporter: mojca@… | Owner: jonesc@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: Resolution: | Keywords: Port: root | ----------------------+---------------------- Comment (by jonesc@…): Please explain better exactly what you are doing. I don't understand what you mean by "on top of the latest FT 2.5.1 " ? Which MacPorts port is this ? -- Ticket URL: <https://trac.macports.org/ticket/41572#comment:1> MacPorts <http://www.macports.org/> Ports system for OS X
#41572: root: unknown type name 'FT_Glyph'; did you mean 'FTGlyph' ----------------------+---------------------- Reporter: mojca@… | Owner: jonesc@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: Resolution: | Keywords: Port: root | ----------------------+---------------------- Comment (by ryandesign@…): The freetype port. It was updated to 2.5.1 today. -- Ticket URL: <https://trac.macports.org/ticket/41572#comment:2> MacPorts <http://www.macports.org/> Ports system for OS X
#41572: root: unknown type name 'FT_Glyph'; did you mean 'FTGlyph' ----------------------+---------------------- Reporter: mojca@… | Owner: jonesc@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: Resolution: | Keywords: Port: root | ----------------------+---------------------- Comment (by jonesc@…): Ah right. Just seeing that discussion now ... -- Ticket URL: <https://trac.macports.org/ticket/41572#comment:3> MacPorts <http://www.macports.org/> Ports system for OS X
#41572: root: unknown type name 'FT_Glyph'; did you mean 'FTGlyph' ----------------------+---------------------- Reporter: mojca@… | Owner: jonesc@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: Resolution: | Keywords: Port: root | ----------------------+---------------------- Comment (by mojca@…): I just wanted to confirm that downgrading FreeType leads to a successful compilation. I filed two tickets upstream: * https://sft.its.cern.ch/jira/browse/ROOT-5773 (about this problem) * https://sft.its.cern.ch/jira/browse/ROOT-5767 (a mixture about multiple problems, but one of them is easy to solve, for example with [http://trac.macports.org/browser/users/mojca/ports/science/root/files /patch-graf2d-asimage-src-libAfterImage-asfont.c.diff?rev=114024 this patch] + a patch for `config.h.in` which seems to define `HAVE_FREETYPE_FREETYPE` no matter what) -- Ticket URL: <https://trac.macports.org/ticket/41572#comment:4> MacPorts <http://www.macports.org/> Ports system for OS X
#41572: root: unknown type name 'FT_Glyph'; did you mean 'FTGlyph' ----------------------+---------------------- Reporter: mojca@… | Owner: jonesc@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: Resolution: | Keywords: Port: root | ----------------------+---------------------- Comment (by jonesc@…): Hi, Reading the reports, its not clear to me if this is a ROOT bug, a FreeType bug, or perhaps even a MacPorts bug in the ROOT port file. However, as a work around I have prepared the attached patch which reverts the build to using ROOT own internal free type build, instead of the external (MacPorts) one. As a point of principle, I have always tried to use the external MacPorts ports wherever possible, but this isn't always possible. At least until this is resolved, the patch offers a fix. Works for me on OSX 10.9. Chris -- Ticket URL: <https://trac.macports.org/ticket/41572#comment:5> MacPorts <http://www.macports.org/> Ports system for OS X
#41572: root: unknown type name 'FT_Glyph'; did you mean 'FTGlyph' ----------------------+---------------------- Reporter: mojca@… | Owner: jonesc@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: Resolution: | Keywords: Port: root | ----------------------+---------------------- Comment (by mojca@…): I committed r114085, but it would probably be nice to switch back to external library when this gets fixed. -- Ticket URL: <https://trac.macports.org/ticket/41572#comment:6> MacPorts <http://www.macports.org/> Ports system for OS X
#41572: root: switch to external FreeType once "unknown type name 'FT_Glyph'; did you mean 'FTGlyph'" is fixed --------------------------+---------------------- Reporter: mojca@… | Owner: jonesc@… Type: enhancement | Status: new Priority: Normal | Milestone: Component: ports | Version: Resolution: | Keywords: Port: root | --------------------------+---------------------- Changes (by mojca@…): * type: defect => enhancement -- Ticket URL: <https://trac.macports.org/ticket/41572#comment:7> MacPorts <http://www.macports.org/> Ports system for OS X
#41572: root: switch to external FreeType once "unknown type name 'FT_Glyph'; did you mean 'FTGlyph'" is fixed --------------------------+---------------------- Reporter: mojca@… | Owner: jonesc@… Type: enhancement | Status: new Priority: Normal | Milestone: Component: ports | Version: Resolution: | Keywords: Port: root | --------------------------+---------------------- Comment (by jonesc@…): Thanks. Reverting back once it is resolved is certainly my plan... -- Ticket URL: <https://trac.macports.org/ticket/41572#comment:8> MacPorts <http://www.macports.org/> Ports system for OS X
#41572: root: switch to external FreeType once "unknown type name 'FT_Glyph'; did you mean 'FTGlyph'" is fixed --------------------------+---------------------- Reporter: mojca@… | Owner: jonesc@… Type: enhancement | Status: new Priority: Normal | Milestone: Component: ports | Version: Resolution: | Keywords: Port: root | --------------------------+---------------------- Comment (by mojca@…): I managed to overcome this particular problem with an ugly patch, replacing {{{ #define FT_GLYPH_H <ftglyph.h> }}} by {{{ #define FT_GLYPH_H <../freetype2/ftglyph.h> }}} in `$prefix/include/freetype2/config/ftheader.h` See the upstream ticket: * https://savannah.nongnu.org/bugs/index.php?40972 I hope a better solution will be found. -- Ticket URL: <https://trac.macports.org/ticket/41572#comment:9> MacPorts <http://www.macports.org/> Ports system for OS X
#41572: root: switch to external FreeType once "unknown type name 'FT_Glyph'; did you mean 'FTGlyph'" is fixed --------------------------+---------------------- Reporter: mojca@… | Owner: jonesc@… Type: enhancement | Status: new Priority: Normal | Milestone: Component: ports | Version: Resolution: | Keywords: Port: root | --------------------------+---------------------- Comment (by ryandesign@…): The upstream ticket has been closed with the comment:
It's not the fault of our library that another library which is based on FreeType uses such a similar header name!
So please file a bug with the makers of ftgl and ask them to rename their headers. -- Ticket URL: <https://trac.macports.org/ticket/41572#comment:10> MacPorts <http://www.macports.org/> Ports system for OS X
#41572: root: switch to external FreeType once "unknown type name 'FT_Glyph'; did you mean 'FTGlyph'" is fixed --------------------------+---------------------- Reporter: mojca@… | Owner: jonesc@… Type: enhancement | Status: new Priority: Normal | Milestone: Component: ports | Version: Resolution: | Keywords: Port: root | --------------------------+---------------------- Comment (by mojca@…): I reported it to https://sourceforge.net/p/ftgl/bugs/41/. Independent of that the ROOT team will try to come up with a solution, so any hints welcome. And yes, MacPorts can implement yet another workaround, but since it's not a pressing issue now that the built-in library works, I would suggest to try to wait for either FTGL or ROOT to come up with a patch first. -- Ticket URL: <https://trac.macports.org/ticket/41572#comment:11> MacPorts <http://www.macports.org/> Ports system for OS X
#41572: root: switch to external FreeType once "unknown type name 'FT_Glyph'; did you mean 'FTGlyph'" is fixed --------------------------+---------------------- Reporter: mojca@… | Owner: jonesc@… Type: enhancement | Status: new Priority: Normal | Milestone: Component: ports | Version: Resolution: | Keywords: Port: root | --------------------------+---------------------- Comment (by mojca@…): See https://github.com/root- mirror/root/commit/446a11828dcf577efd15d9057703c5bd099dd148 (as well as https://sft.its.cern.ch/jira/browse/ROOT-5773). I suspect the fix will be part of 5.34.15, but you can try to backport the patch to existing release if you want. -- Ticket URL: <https://trac.macports.org/ticket/41572#comment:12> MacPorts <http://www.macports.org/> Ports system for OS X
#41572: root: switch to external FreeType once "unknown type name 'FT_Glyph'; did you mean 'FTGlyph'" is fixed --------------------------+---------------------- Reporter: mojca@… | Owner: jonesc@… Type: enhancement | Status: new Priority: Normal | Milestone: Component: ports | Version: Resolution: | Keywords: Port: root | --------------------------+---------------------- Comment (by mojca@…): I tried to switch to external freetype, but I'm afraid that I'm getting exactly the opposite problem now. -- Ticket URL: <https://trac.macports.org/ticket/41572#comment:13> MacPorts <http://www.macports.org/> Ports system for OS X
#41572: root: switch to external FreeType once "unknown type name 'FT_Glyph'; did you mean 'FTGlyph'" is fixed --------------------------+---------------------- Reporter: mojca@… | Owner: jonesc@… Type: enhancement | Status: new Priority: Normal | Milestone: Component: ports | Version: Resolution: | Keywords: Port: root5 root6 | --------------------------+---------------------- Changes (by mojca@…): * port: root => root5 root6 Comment: I changed the affected port list to `root5` and `root6` even though I'm not 100% sure if that's really the case. Also, the issue is now "reverse", so the ticket title is not accurate any longer. -- Ticket URL: <https://trac.macports.org/ticket/41572#comment:14> MacPorts <http://www.macports.org/> Ports system for OS X
participants (1)
-
MacPorts