Xft library warning?

classic Classic list List threaded Threaded
9 messages Options
Reply | Threaded
Open this post in threaded view
|

Xft library warning?

bpabbott
Administrator
I’ve just switched from the Fink package manager on macOS to Homebrew. Using Hombrew the only two features I’m lacking are OSMesa and the Xft library.

I think Xft is the X11 Freetype library, correct? On macOS, X11 is not used, and freetype is included as libfreetype2.dylib. Is the warning below meaningful, or just a “feature” resulting from development on X11?

        configure:79601: WARNING: Xft library not found.  OpenGL graphics will not be fully functional.

I am hopeful we’ll be pushing changesets to fix Java and Qt5 support for macOS soon.

Ben
Reply | Threaded
Open this post in threaded view
|

Re: Xft library warning?

Dmitri A. Sergatskov
On Wed, Jan 10, 2018 at 8:44 PM, Ben Abbott <[hidden email]> wrote:
I’ve just switched from the Fink package manager on macOS to Homebrew. Using Hombrew the only two features I’m lacking are OSMesa and the Xft library.

I think Xft is the X11 Freetype library, correct? On macOS, X11 is not used, and freetype is included as libfreetype2.dylib. Is the warning below meaningful, or just a “feature” resulting from development on X11?

        configure:79601: WARNING: Xft library not found.  OpenGL graphics will not be fully functional.

 
​I am not sure how it works on MacOS (or Win).​

​I think freetype is a higher level library that uses Xft on X11 systems. ​

​On Fedora:

​rpm -qi freetype
<...>
Description :
The FreeType engine is a free and portable font rendering
engine, developed to provide advanced font support for a variety of
platforms and environments. FreeType is a library which can open and
manages font files as well as efficiently load, hint and render
individual glyphs. FreeType is not a font server or a complete
text-rendering library.

rpm -qi libXft
<...>
Description :
X.Org X11 libXft runtime library

Also:

Dmitri.
--



 
I am hopeful we’ll be pushing changesets to fix Java and Qt5 support for macOS soon.

Ben

Reply | Threaded
Open this post in threaded view
|

Re: Xft library warning?

bpabbott
Administrator
On Jan 10, 2018, at 19:32, Dmitri A. Sergatskov <[hidden email]> wrote:

On Wed, Jan 10, 2018 at 8:44 PM, Ben Abbott <[hidden email]> wrote:
I’ve just switched from the Fink package manager on macOS to Homebrew. Using Hombrew the only two features I’m lacking are OSMesa and the Xft library.

I think Xft is the X11 Freetype library, correct? On macOS, X11 is not used, and freetype is included as libfreetype2.dylib. Is the warning below meaningful, or just a “feature” resulting from development on X11?

        configure:79601: WARNING: Xft library not found.  OpenGL graphics will not be fully functional.

 
​I am not sure how it works on MacOS (or Win).​

​I think freetype is a higher level library that uses Xft on X11 systems. ​

​On Fedora:

​rpm -qi freetype
<...>
Description :
The FreeType engine is a free and portable font rendering
engine, developed to provide advanced font support for a variety of
platforms and environments. FreeType is a library which can open and
manages font files as well as efficiently load, hint and render
individual glyphs. FreeType is not a font server or a complete
text-rendering library.

rpm -qi libXft
<...>
Description :
X.Org X11 libXft runtime library

Also:

Anyone know why Xft is needed by Octave? Is it used for the GUI, or is it used for figure text objects?

Ben
Reply | Threaded
Open this post in threaded view
|

Re: Xft library warning?

Mike Miller-4
On Wed, Jan 10, 2018 at 19:38:24 -0800, Ben Abbott wrote:
> > On Jan 10, 2018, at 19:32, Dmitri A. Sergatskov <[hidden email]> wrote:
> > I think freetype is a higher level library that uses Xft on X11 systems.

It's the other way around, Xft is an interface for X11 to use FreeType.

> Anyone know why Xft is needed by Octave? Is it used for the GUI, or is it used for figure text objects?

I think it is needed on GNU/Linux systems for FLTK. The Xft library is
never used by Octave directly, the configure script only checks for it
because a build error may occur on some systems that have FLTK installed
but are missing Xft. It's more like Octave is making sure that the
dependency is installed.

See https://lists.gnu.org/archive/html/octave-maintainers/2013-11/msg00629.html

This may no longer be strictly necessary on current systems, but it
might take some effort to be sure that it can be dropped safely.

--
mike

signature.asc (849 bytes) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: Xft library warning?

bpabbott
Administrator
> On Jan 10, 2018, at 11:47 PM, Mike Miller <[hidden email]> wrote:
>
> On Wed, Jan 10, 2018 at 19:38:24 -0800, Ben Abbott wrote:
>>> On Jan 10, 2018, at 19:32, Dmitri A. Sergatskov <[hidden email]> wrote:
>>> I think freetype is a higher level library that uses Xft on X11 systems.
>
> It's the other way around, Xft is an interface for X11 to use FreeType.
>
>> Anyone know why Xft is needed by Octave? Is it used for the GUI, or is it used for figure text objects?
>
> I think it is needed on GNU/Linux systems for FLTK. The Xft library is
> never used by Octave directly, the configure script only checks for it
> because a build error may occur on some systems that have FLTK installed
> but are missing Xft. It's more like Octave is making sure that the
> dependency is installed.
>
> See https://lists.gnu.org/archive/html/octave-maintainers/2013-11/msg00629.html
>
> This may no longer be strictly necessary on current systems, but it
> might take some effort to be sure that it can be dropped safely.
>
> --
> mike

Ok. It sounds like we can safely ignore the warning on macOS (although it might be nice to eliminate the warning when not using X11 on macOS).

Ben
Reply | Threaded
Open this post in threaded view
|

Re: Xft library warning?

John W. Eaton
Administrator
On 01/11/2018 09:37 AM, Ben Abbott wrote:

>> On Jan 10, 2018, at 11:47 PM, Mike Miller <[hidden email]> wrote:
>>
>> On Wed, Jan 10, 2018 at 19:38:24 -0800, Ben Abbott wrote:
>>>> On Jan 10, 2018, at 19:32, Dmitri A. Sergatskov <[hidden email]> wrote:
>>>> I think freetype is a higher level library that uses Xft on X11 systems.
>>
>> It's the other way around, Xft is an interface for X11 to use FreeType.
>>
>>> Anyone know why Xft is needed by Octave? Is it used for the GUI, or is it used for figure text objects?
>>
>> I think it is needed on GNU/Linux systems for FLTK. The Xft library is
>> never used by Octave directly, the configure script only checks for it
>> because a build error may occur on some systems that have FLTK installed
>> but are missing Xft. It's more like Octave is making sure that the
>> dependency is installed.
>>
>> See https://lists.gnu.org/archive/html/octave-maintainers/2013-11/msg00629.html
>>
>> This may no longer be strictly necessary on current systems, but it
>> might take some effort to be sure that it can be dropped safely.
>>
>> --
>> mike
>
> Ok. It sounds like we can safely ignore the warning on macOS (although it might be nice to eliminate the warning when not using X11 on macOS).

If I understand correctly, we only check for Xft if X11 is present.  How
can we know whether X11 is not needed on OS X?  Or how can we tell
whether Xft is not needed, regardless of whether X11 is needed?

jwe


Reply | Threaded
Open this post in threaded view
|

Re: Xft library warning?

bpabbott
Administrator
On Jan 11, 2018, at 1:28 PM, John W. Eaton <[hidden email]> wrote:

On 01/11/2018 09:37 AM, Ben Abbott wrote:
On Jan 10, 2018, at 11:47 PM, Mike Miller <[hidden email]> wrote:

On Wed, Jan 10, 2018 at 19:38:24 -0800, Ben Abbott wrote:
On Jan 10, 2018, at 19:32, Dmitri A. Sergatskov <[hidden email]> wrote:
I think freetype is a higher level library that uses Xft on X11 systems.

It's the other way around, Xft is an interface for X11 to use FreeType.

Anyone know why Xft is needed by Octave? Is it used for the GUI, or is it used for figure text objects?

I think it is needed on GNU/Linux systems for FLTK. The Xft library is
never used by Octave directly, the configure script only checks for it
because a build error may occur on some systems that have FLTK installed
but are missing Xft. It's more like Octave is making sure that the
dependency is installed.

See https://lists.gnu.org/archive/html/octave-maintainers/2013-11/msg00629.html

This may no longer be strictly necessary on current systems, but it
might take some effort to be sure that it can be dropped safely.

-- 
mike
Ok. It sounds like we can safely ignore the warning on macOS (although it might be nice to eliminate the warning when not using X11 on macOS).

If I understand correctly, we only check for Xft if X11 is present.  How can we know whether X11 is not needed on OS X?  Or how can we tell whether Xft is not needed, regardless of whether X11 is needed?

jwe

If we’re on macOS and are using "-framework Carbon”, then we’re not using X11.

Ben

Reply | Threaded
Open this post in threaded view
|

Re: Xft library warning?

Mike Miller-4
In reply to this post by John W. Eaton
On Thu, Jan 11, 2018 at 16:28:01 -0500, John W. Eaton wrote:
> If I understand correctly, we only check for Xft if X11 is present.

We currently check for Xft unconditionally, right? The comment says
"when using X11", but that looks out of date.

> How can
> we know whether X11 is not needed on OS X?  Or how can we tell whether Xft
> is not needed, regardless of whether X11 is needed?

I think we should remove the check completely (either now or eventually)
because Octave doesn't actually care about libXft at all.

AFAICT the check was added because some distributions didn't install it
as a dependency for other libraries that we do use and the build broke.

The only negative consequence of removing this check might be that
someone on some distribution may have a build failure because their
package manager isn't pulling in Xft when they should.

--
mike

signature.asc (849 bytes) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: Xft library warning?

John W. Eaton
Administrator
On 01/11/2018 04:48 PM, Mike Miller wrote:

> On Thu, Jan 11, 2018 at 16:28:01 -0500, John W. Eaton wrote:
>> If I understand correctly, we only check for Xft if X11 is present.
>
> We currently check for Xft unconditionally, right? The comment says
> "when using X11", but that looks out of date.
>
>> How can
>> we know whether X11 is not needed on OS X?  Or how can we tell whether Xft
>> is not needed, regardless of whether X11 is needed?
>
> I think we should remove the check completely (either now or eventually)
> because Octave doesn't actually care about libXft at all.
>
> AFAICT the check was added because some distributions didn't install it
> as a dependency for other libraries that we do use and the build broke.
>
> The only negative consequence of removing this check might be that
> someone on some distribution may have a build failure because their
> package manager isn't pulling in Xft when they should.
>

You may be right.  For the record, here is a link to the mailing list
discussion that prompted this change:

 
http://lists.gnu.org/archive/html/octave-maintainers/2013-11/msg00629.html

That was more than 4 years ago now.  Maybe it is no longer an issue.

jwe