Failure to compile

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

Failure to compile

Conner Phillips
Hi,

I have done some compiling, but when things go wrong I am not so sure
what to do, especially with big programs and dependencies.

I'm running up to date Arch Linux and trying to compile from HEAD on
github. I get the following errors

/usr/lib/libpangoft2-1.0.so.0: undefined reference to
`hb_font_funcs_set_nominal_glyph_func'
/usr/lib/libpangoft2-1.0.so.0: undefined reference to
`hb_buffer_set_cluster_level'
/usr/lib/libraqm.so.0: undefined reference to `hb_ft_font_set_load_flags'
/usr/lib/libpangoft2-1.0.so.0: undefined reference to
`hb_font_funcs_set_variation_glyph_func'

I'm guessing hb refers to harfbuzz? I have this installed but am
confused as what is going on here. Could anyone help? Thanks.


Reply | Threaded
Open this post in threaded view
|

Re: Failure to compile

Kaushal Modi
On Thu, Oct 12, 2017 at 10:04 AM Conner Phillips <
[hidden email]> wrote:

> Hi,
>
> I have done some compiling, but when things go wrong I am not so sure
> what to do, especially with big programs and dependencies.
>
> I'm running up to date Arch Linux and trying to compile from HEAD on
> github.


You can just clone the official source from
http://git.savannah.gnu.org/r/emacs.git


> I get the following errors
>
> /usr/lib/libpangoft2-1.0.so.0: undefined reference to
> `hb_font_funcs_set_nominal_glyph_func'
> /usr/lib/libpangoft2-1.0.so.0: undefined reference to
> `hb_buffer_set_cluster_level'
> /usr/lib/libraqm.so.0: undefined reference to `hb_ft_font_set_load_flags'
> /usr/lib/libpangoft2-1.0.so.0: undefined reference to
> `hb_font_funcs_set_variation_glyph_func'
>
> I'm guessing hb refers to harfbuzz? I have this installed but am
> confused as what is going on here. Could anyone help? Thanks.
>

Getting freetype + harfbuff is messy. Here is what I have from my notes.. I
need to install all libs in my $HOME as a non-root user on my machine..

1 freetype + harfbuzz                                :pango:ghostscript:
=====================

  The RHEL6 default freetype version was older than 2.4.2 (the min
  required version of freetype to install ghostscript).  It was
  preinstalled on the system.

  /freetype - last downloaded version -- 2.6/ /harfbuzz - last
  downloaded version -- 1.0.3/

  [https://bugs.freedesktop.org/show_bug.cgi?id=75652]

  freetype depends on harfbuzz and vice versa. To solve this chicken and
  egg problem, do this.

  1. First install freetype *without harfbuzz*
     ,----
     | make distclean
     | ./configure --prefix=$HOME/local --without-harfbuzz
     | make
     | make install
     `----
  2. Then install harfbuzz
     ,----
     | make distclean
     | ./configure --prefix=$HOME/local
     | make
     | make install
     `----
  3. Reinstall freetype *with harfbuzz*
     ,----
     | make distclean
     | ./configure --prefix=$HOME/local
     | make
     | make install
     `----

--

Kaushal Modi
Reply | Threaded
Open this post in threaded view
|

Re: Failure to compile

Eli Zaretskii
In reply to this post by Conner Phillips
> From: Conner Phillips <[hidden email]>
> Date: Thu, 12 Oct 2017 11:59:52 +0200
>
> I'm running up to date Arch Linux and trying to compile from HEAD on
> github. I get the following errors
>
> /usr/lib/libpangoft2-1.0.so.0: undefined reference to
> `hb_font_funcs_set_nominal_glyph_func'
> /usr/lib/libpangoft2-1.0.so.0: undefined reference to
> `hb_buffer_set_cluster_level'
> /usr/lib/libraqm.so.0: undefined reference to `hb_ft_font_set_load_flags'
> /usr/lib/libpangoft2-1.0.so.0: undefined reference to
> `hb_font_funcs_set_variation_glyph_func'

Are you building with Cairo?  If so, try disabling Cairo at configure
time.

Reply | Threaded
Open this post in threaded view
|

Re: Failure to compile

Göktuğ Kayaalp
In reply to this post by Kaushal Modi
On 2017-10-12 14:10 +00, Kaushal Modi <[hidden email]> wrote:
> I need to install all libs in my $HOME as a non-root user on my
> machine..

Off-topic: you might want to give Guix (the package manager, not GuixSD
the OS) a go.  It can work as an auxiliary package manager and you can
download it in its binary form and just run:
https://www.gnu.org/software/guix/download/.  No root privileges needed.

AFAIK Nix can do the same thing too but I haven't tried.

--
İ. Göktuğ Kayaalp <http://www.gkayaalp.com/>
                        024C 30DD 597D 142B 49AC
                        40EB 465C D949 B101 2427

Reply | Threaded
Open this post in threaded view
|

Re: Failure to compile

Kaushal Modi
On Thu, Oct 12, 2017 at 12:42 PM Göktuğ Kayaalp <[hidden email]> wrote:

> On 2017-10-12 14:10 +00, Kaushal Modi <[hidden email]> wrote:
> > I need to install all libs in my $HOME as a non-root user on my
> > machine..
>
> Off-topic: you might want to give Guix (the package manager, not GuixSD
> the OS) a go.  It can work as an auxiliary package manager and you can
> download it in its binary form and just run:
> https://www.gnu.org/software/guix/download/.  No root privileges needed.
>

I have read about it, but I don't have guile on my system. Last time I
tried, I wasn't able to install guile because I couldn't install certain
dependencies locally.

  checking for libltdl... no
  configure: error: GNU libltdl (Libtool) not found

Ironically, this page[1] suggests installing Guile using Guix (chicken/egg).

[1]: https://www.gnu.org/software/guile/download/
--

Kaushal Modi
Reply | Threaded
Open this post in threaded view
|

Re: Failure to compile

Conner Phillips
In reply to this post by Kaushal Modi
Turns out Anaconda was at the front of my path and stealing calls that
should have been going to system libraries. Dropped Anaconda to the end
of my path and it is all settled now.


On 10/12/2017 04:10 PM, Kaushal Modi wrote:

> On Thu, Oct 12, 2017 at 10:04 AM Conner Phillips
> <[hidden email] <mailto:[hidden email]>> wrote:
>
>     Hi,
>
>     I have done some compiling, but when things go wrong I am not so sure
>     what to do, especially with big programs and dependencies.
>
>     I'm running up to date Arch Linux and trying to compile from HEAD on
>     github.
>
>
> You can just clone the official source from
> http://git.savannah.gnu.org/r/emacs.git
>
>     I get the following errors
>
>     /usr/lib/libpangoft2-1.0.so.0: undefined reference to
>     `hb_font_funcs_set_nominal_glyph_func'
>     /usr/lib/libpangoft2-1.0.so.0: undefined reference to
>     `hb_buffer_set_cluster_level'
>     /usr/lib/libraqm.so.0: undefined reference to
>     `hb_ft_font_set_load_flags'
>     /usr/lib/libpangoft2-1.0.so.0: undefined reference to
>     `hb_font_funcs_set_variation_glyph_func'
>
>     I'm guessing hb refers to harfbuzz? I have this installed but am
>     confused as what is going on here. Could anyone help? Thanks.
>
>
> Getting freetype + harfbuff is messy. Here is what I have from my
> notes.. I need to install all libs in my $HOME as a non-root user on
> my machine..
>
> 1 freetype + harfbuzz :pango:ghostscript:
> =====================
>
>   The RHEL6 default freetype version was older than 2.4.2 (the min
>   required version of freetype to install ghostscript). It was
>   preinstalled on the system.
>
>   /freetype - last downloaded version -- 2.6/ /harfbuzz - last
>   downloaded version -- 1.0.3/
>
>   [https://bugs.freedesktop.org/show_bug.cgi?id=75652]
>
>   freetype depends on harfbuzz and vice versa. To solve this chicken and
>   egg problem, do this.
>
>   1. First install freetype *without harfbuzz*
>      ,----
>      | make distclean
>      | ./configure --prefix=$HOME/local --without-harfbuzz
>      | make
>      | make install
>      `----
>   2. Then install harfbuzz
>      ,----
>      | make distclean
>      | ./configure --prefix=$HOME/local
>      | make
>      | make install
>      `----
>   3. Reinstall freetype *with harfbuzz*
>      ,----
>      | make distclean
>      | ./configure --prefix=$HOME/local
>      | make
>      | make install
>      `----
> --
>
> Kaushal Modi
>