GNU bug report logs - #55022
error compiling emacs 28.1

Previous Next

Package: emacs;

Reported by: robin hankin <hankin.robin <at> gmail.com>

Date: Tue, 19 Apr 2022 11:17:01 UTC

Severity: normal

Tags: moreinfo

Done: Lars Ingebrigtsen <larsi <at> gnus.org>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 55022 in the body.
You can then email your comments to 55022 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-gnu-emacs <at> gnu.org:
bug#55022; Package emacs. (Tue, 19 Apr 2022 11:17:01 GMT) Full text and rfc822 format available.

Acknowledgement sent to robin hankin <hankin.robin <at> gmail.com>:
New bug report received and forwarded. Copy sent to bug-gnu-emacs <at> gnu.org. (Tue, 19 Apr 2022 11:17:01 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: robin hankin <hankin.robin <at> gmail.com>
To: bug-gnu-emacs <at> gnu.org
Subject: error compiling emacs 28.1
Date: Tue, 19 Apr 2022 19:03:07 +1200
[Message part 1 (text/plain, inline)]
Ubuntu 20.04. I downloaded emacs-28.1.tar.gz and untarred it and changed
to the correct directory.  Then:

./configure
./make

configure finished without error.  But make failed:

[snip]
e[2]: Leaving directory '/home/rhankin/Downloads/emacs-28.1/admin/unidata'
make -C ../admin/unidata emoji-zwj.el
make[2]: Entering directory
'/home/rhankin/Downloads/emacs-28.1/admin/unidata'
make[2]: Nothing to be done for 'emoji-zwj.el'.
make[2]: Leaving directory
'/home/rhankin/Downloads/emacs-28.1/admin/unidata'
  CCLD     temacs
/usr/bin/ld: /lib/x86_64-linux-gnu/libpangoft2-1.0.so.0: undefined
reference to `hb_ot_layout_script_select_language'
/usr/bin/ld: /lib/x86_64-linux-gnu/libpangoft2-1.0.so.0: undefined
reference to `hb_blob_create_from_file'
/usr/bin/ld: /lib/x86_64-linux-gnu/libpangoft2-1.0.so.0: undefined
reference to `hb_ot_var_named_instance_get_design_coords'
/usr/bin/ld: /lib/x86_64-linux-gnu/libpangoft2-1.0.so.0: undefined
reference to `hb_ot_tags_from_script_and_language'
/usr/bin/ld: /lib/x86_64-linux-gnu/libpangoft2-1.0.so.0: undefined
reference to `hb_ot_var_get_axis_infos'
/usr/bin/ld: /lib/x86_64-linux-gnu/libpango-1.0.so.0: undefined reference
to `hb_buffer_set_invisible_glyph'
/usr/bin/ld: /lib/x86_64-linux-gnu/libpangoft2-1.0.so.0: undefined
reference to `hb_ot_metrics_get_position'
collect2: error: ld returned 1 exit status
make[1]: *** [Makefile:647: temacs] Error 1
make[1]: Leaving directory '/home/rhankin/Downloads/emacs-28.1/src'
make: *** [Makefile:449: src] Error 2
rhankin <at> limpet:~/Downloads/emacs-28.1$

I would expect a successful ./configure to result in compilation, not an
error.



<hankin.robin <at> gmail.com>
[Message part 2 (text/html, inline)]

Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#55022; Package emacs. (Tue, 19 Apr 2022 12:48:02 GMT) Full text and rfc822 format available.

Message #8 received at 55022 <at> debbugs.gnu.org (full text, mbox):

From: Eli Zaretskii <eliz <at> gnu.org>
To: robin hankin <hankin.robin <at> gmail.com>
Cc: 55022 <at> debbugs.gnu.org
Subject: Re: bug#55022: error compiling emacs 28.1
Date: Tue, 19 Apr 2022 15:47:39 +0300
> From: robin hankin <hankin.robin <at> gmail.com>
> Date: Tue, 19 Apr 2022 19:03:07 +1200
> 
> Ubuntu 20.04. I downloaded emacs-28.1.tar.gz and untarred it and changed
> to the correct directory.  Then:
> 
> ./configure
> ./make
> 
> configure finished without error.  But make failed:
> 
> [snip]
> e[2]: Leaving directory '/home/rhankin/Downloads/emacs-28.1/admin/unidata'
> make -C ../admin/unidata emoji-zwj.el
> make[2]: Entering directory '/home/rhankin/Downloads/emacs-28.1/admin/unidata'
> make[2]: Nothing to be done for 'emoji-zwj.el'.
> make[2]: Leaving directory '/home/rhankin/Downloads/emacs-28.1/admin/unidata'
>   CCLD     temacs
> /usr/bin/ld: /lib/x86_64-linux-gnu/libpangoft2-1.0.so.0: undefined reference to
> `hb_ot_layout_script_select_language'
> /usr/bin/ld: /lib/x86_64-linux-gnu/libpangoft2-1.0.so.0: undefined reference to `hb_blob_create_from_file'
> /usr/bin/ld: /lib/x86_64-linux-gnu/libpangoft2-1.0.so.0: undefined reference to
> `hb_ot_var_named_instance_get_design_coords'
> /usr/bin/ld: /lib/x86_64-linux-gnu/libpangoft2-1.0.so.0: undefined reference to
> `hb_ot_tags_from_script_and_language'
> /usr/bin/ld: /lib/x86_64-linux-gnu/libpangoft2-1.0.so.0: undefined reference to `hb_ot_var_get_axis_infos'
> /usr/bin/ld: /lib/x86_64-linux-gnu/libpango-1.0.so.0: undefined reference to `hb_buffer_set_invisible_glyph'
> /usr/bin/ld: /lib/x86_64-linux-gnu/libpangoft2-1.0.so.0: undefined reference to `hb_ot_metrics_get_position'
> collect2: error: ld returned 1 exit status
> make[1]: *** [Makefile:647: temacs] Error 1
> make[1]: Leaving directory '/home/rhankin/Downloads/emacs-28.1/src'
> make: *** [Makefile:449: src] Error 2
> rhankin <at> limpet:~/Downloads/emacs-28.1$ 

Emacs 28.1 doesn't call any of these functions.  Since the error
messages are triggered by libpangoft2-1.0.so, my guess would be that
your system has a misconfigured installation of Pango and HarfBuzz:
the former requires a (probably later?) version of HarfBuzz than the
HarfBuzz version actually installed.

So I think you should review the relevant libraries installed on your
system, and perhaps upgrade some of them.  Then try reconfiguring and
rebuilding Emacs.




Added tag(s) moreinfo. Request was from Lars Ingebrigtsen <larsi <at> gnus.org> to control <at> debbugs.gnu.org. (Tue, 19 Apr 2022 12:51:01 GMT) Full text and rfc822 format available.

Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#55022; Package emacs. (Wed, 20 Apr 2022 05:45:02 GMT) Full text and rfc822 format available.

Message #13 received at 55022 <at> debbugs.gnu.org (full text, mbox):

From: Eli Zaretskii <eliz <at> gnu.org>
To: robin hankin <hankin.robin <at> gmail.com>
Cc: 55022 <at> debbugs.gnu.org
Subject: Re: bug#55022: error compiling emacs 28.1
Date: Wed, 20 Apr 2022 08:44:46 +0300
> From: robin hankin <hankin.robin <at> gmail.com>
> Date: Wed, 20 Apr 2022 07:29:53 +1200
> 
> OK, thanks for this.  But surely it is reasonable to expect ./configure  to detect such problems?

Not really: configure script usually tests for a library by calling
the pkg-config command, and even if it tries to build a test program
with the library, that test program definitely cannot call all of the
functions that Emacs does, and thus cannot find such problems with
100% probability.

> But, my
> main concern is to allow others who will encounter exactly the same problem [I use an unmodified ubuntu
> 20.04]  to see that they are not alone.

I'd suggest to report this to the Ubuntu package maintainers: it
sounds like their packaging has some problem.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#55022; Package emacs. (Wed, 20 Apr 2022 11:00:03 GMT) Full text and rfc822 format available.

Message #16 received at 55022 <at> debbugs.gnu.org (full text, mbox):

From: Lars Ingebrigtsen <larsi <at> gnus.org>
To: robin hankin <hankin.robin <at> gmail.com>
Cc: 55022 <at> debbugs.gnu.org
Subject: Re: bug#55022: error compiling emacs 28.1
Date: Wed, 20 Apr 2022 12:59:31 +0200
robin hankin <hankin.robin <at> gmail.com> writes:

> /usr/bin/ld: /lib/x86_64-linux-gnu/libpangoft2-1.0.so.0: undefined reference to
> `hb_ot_layout_script_select_language'

Like Eli says, this sounds like it could be a bug in Ubuntu 20.04, but
perhaps we could work around it anyway.  I don't have system with that
OS available here -- do you know what library defines
hb_ot_layout_script_select_language?  And if so, does altering the
configure script to include that library (with -lthat-library) fix the
build issue?

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#55022; Package emacs. (Wed, 20 Apr 2022 12:30:03 GMT) Full text and rfc822 format available.

Message #19 received at 55022 <at> debbugs.gnu.org (full text, mbox):

From: Eli Zaretskii <eliz <at> gnu.org>
To: Lars Ingebrigtsen <larsi <at> gnus.org>
Cc: hankin.robin <at> gmail.com, 55022 <at> debbugs.gnu.org
Subject: Re: bug#55022: error compiling emacs 28.1
Date: Wed, 20 Apr 2022 15:29:42 +0300
> From: Lars Ingebrigtsen <larsi <at> gnus.org>
> Date: Wed, 20 Apr 2022 12:59:31 +0200
> Cc: 55022 <at> debbugs.gnu.org
> 
> do you know what library defines
> hb_ot_layout_script_select_language?

All the hb_* functions are from HarfBuzz.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#55022; Package emacs. (Wed, 18 May 2022 18:05:02 GMT) Full text and rfc822 format available.

Message #22 received at 55022 <at> debbugs.gnu.org (full text, mbox):

From: Lars Ingebrigtsen <larsi <at> gnus.org>
To: robin hankin <hankin.robin <at> gmail.com>
Cc: 55022 <at> debbugs.gnu.org
Subject: Re: bug#55022: error compiling emacs 28.1
Date: Wed, 18 May 2022 20:04:18 +0200
robin hankin <hankin.robin <at> gmail.com> writes:

> /usr/bin/ld: /lib/x86_64-linux-gnu/libpango-1.0.so.0: undefined reference to
> `hb_buffer_set_invisible_glyph'
> /usr/bin/ld: /lib/x86_64-linux-gnu/libpangoft2-1.0.so.0: undefined reference to
> `hb_ot_metrics_get_position'

I found an Ubuntu 20.04 system here, and Emacs built fine by default.

I tried removing libharfbuzz-dev manually, and I then got this warning:

configure: WARNING: This configuration uses the Cairo graphics library,
    but not the HarfBuzz font shaping library (minimum version 0.9.42).
    We recommend the use of HarfBuzz when using Cairo, please install
    appropriate HarfBuzz development packages.

But Emacs still built fine.

So I think it sounds likely that your system is somewhat broken in one
way or another, and there's not much that can be done on the Emacs side
here, so I'm closing this bug report.

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no




bug closed, send any further explanations to 55022 <at> debbugs.gnu.org and robin hankin <hankin.robin <at> gmail.com> Request was from Lars Ingebrigtsen <larsi <at> gnus.org> to control <at> debbugs.gnu.org. (Wed, 18 May 2022 18:05:03 GMT) Full text and rfc822 format available.

bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Thu, 16 Jun 2022 11:24:06 GMT) Full text and rfc822 format available.

This bug report was last modified 1 year and 314 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.