* Emacs master build failing on RHEL 6.8 [image.c] @ 2019-06-04 11:49 Kaushal Modi 2019-06-04 19:17 ` Paul Eggert 0 siblings, 1 reply; 6+ messages in thread From: Kaushal Modi @ 2019-06-04 11:49 UTC (permalink / raw) To: Emacs developers; +Cc: Paul Eggert [-- Attachment #1: Type: text/plain, Size: 925 bytes --] Hello, A recent change to image.c broke the emacs master build on my RHEL 6.8 system. I get this error: make[2]: Leaving directory '/home/kmodi/downloads/git/emacs/admin/unidata' CCLD temacs /usr/bin/ld: warning: libgmp.so.3, needed by /cad/adi/apps/gnu/linux/x86_64/6/lib/libhogweed.so.2, may conflict with libgmp.so.10 image.o: In function `gif_load': image.c:(.text+0xa76b): undefined reference to `GifErrorString' image.c:(.text+0xa7d8): undefined reference to `GifErrorString' image.c:(.text+0xaefe): undefined reference to `GifErrorString' collect2: error: ld returned 1 exit status My librsvg version is 2.26.0 (Reference to a recent discussion around this topic: https://lists.gnu.org/r/emacs-devel/2019-05/msg00145.html). My last emacs devel build was 5 days back using https://git.savannah.gnu.org/cgit/emacs.git/commit/?id=cc71a82fc705a73fa3ef6cda3ec6bee1cb654d7e, and that works fine. -- Kaushal Modi [-- Attachment #2: Type: text/html, Size: 1437 bytes --] ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: Emacs master build failing on RHEL 6.8 [image.c] 2019-06-04 11:49 Emacs master build failing on RHEL 6.8 [image.c] Kaushal Modi @ 2019-06-04 19:17 ` Paul Eggert 2019-06-04 19:36 ` Kaushal Modi 0 siblings, 1 reply; 6+ messages in thread From: Paul Eggert @ 2019-06-04 19:17 UTC (permalink / raw) To: Kaushal Modi; +Cc: Emacs developers On 6/4/19 4:49 AM, Kaushal Modi wrote: > /usr/bin/ld: warning: libgmp.so.3, needed by > /cad/adi/apps/gnu/linux/x86_64/6/lib/libhogweed.so.2, may conflict with > libgmp.so.10 This looks like some other glitch in your build process, something you should fix but unrelated to the GifErrorString problem. > image.o: In function `gif_load': > image.c:(.text+0xa76b): undefined reference to `GifErrorString' > image.c:(.text+0xa7d8): undefined reference to `GifErrorString' > image.c:(.text+0xaefe): undefined reference to `GifErrorString' > collect2: error: ld returned 1 exit status It looks like your GIFLIB implementation does not match its .h files. image.c calls GifErrorString only if HAVE_GIFERRORSTRING, which is true only if (5 < GIFLIB_MAJOR + (1 <= GIFLIB_MINOR)). So my guess is that your GIFLIB .h files are claiming to be release 5.1 or later, but the implementation predates 5.1. Please look into that. The situation is somewhat tricky as some GIFLIB .h files apparently define incorrect values for GIFLIB_MINOR. I don't see any recent changes to image.c that would explain your problem. ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: Emacs master build failing on RHEL 6.8 [image.c] 2019-06-04 19:17 ` Paul Eggert @ 2019-06-04 19:36 ` Kaushal Modi 2019-06-08 14:24 ` Richard Kim 2019-06-10 2:01 ` Kaushal Modi 0 siblings, 2 replies; 6+ messages in thread From: Kaushal Modi @ 2019-06-04 19:36 UTC (permalink / raw) To: Paul Eggert; +Cc: Emacs developers [-- Attachment #1: Type: text/plain, Size: 469 bytes --] Hello Paul, On Tue, Jun 4, 2019 at 3:17 PM Paul Eggert <eggert@cs.ucla.edu> wrote: > > This looks like some other glitch in your build process, something you > should fix but unrelated to the GifErrorString problem. > You are right! I reverted to the old commit where I was last able to build and I am seeing the same error. I need to now figure out what change on my side could have caused this. Sorry for this false alarm. I'll update here if I figure this out. [-- Attachment #2: Type: text/html, Size: 888 bytes --] ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: Emacs master build failing on RHEL 6.8 [image.c] 2019-06-04 19:36 ` Kaushal Modi @ 2019-06-08 14:24 ` Richard Kim 2022-01-16 18:09 ` Eli Zaretskii 2019-06-10 2:01 ` Kaushal Modi 1 sibling, 1 reply; 6+ messages in thread From: Richard Kim @ 2019-06-08 14:24 UTC (permalink / raw) To: emacs-devel Kaushal Modi <kaushal.modi@gmail.com> writes: > Hello Paul, > > On Tue, Jun 4, 2019 at 3:17 PM Paul Eggert <eggert@cs.ucla.edu> wrote: > > This looks like some other glitch in your build process, something you > should fix but unrelated to the GifErrorString problem. > > You are right! I reverted to the old commit where I was last able to build and I am seeing the same error. > > I need to now figure out what change on my side could have caused this. Sorry for this false alarm. > > I'll update here if I figure this out. Actually I too ran into compile failure on Red Hat 6.6. The root cause was that the change shown below added code referring to LIBRSVG_CHECK_VERSION macro which is not defined for me. I have been using the same build script to build emacs on Red Hat 6.6 for a long time for both master and emacs-26 branches. This is the first time that emacs build failed for me on RH 6 in many months if not over a year. -------------------------------------------------------------------------------- Author: Paul Eggert <eggert@cs.ucla.edu> AuthorDate: Thu May 30 15:06:39 2019 -0700 Commit: Paul Eggert <eggert@cs.ucla.edu> CommitDate: Thu May 30 15:29:50 2019 -0700 Parent: d93f4bda7a Simplify xd_signature to pacify GCC 9 Contained: emacs-26 master Follows: emacs-26.2 (78) Pacify librsvg 2.45.1 and later * src/image.c (svg_load_image): Pacify librsvg 2.45.1 and later, and add a FIXME comment about the deprecated librsvg functions. Backport from master. 1 file changed, 15 insertions(+) src/image.c | 15 +++++++++++++++ modified src/image.c @@ -9306,6 +9306,17 @@ svg_load_image (struct frame *f, struct image *img, char *contents, if (filename) rsvg_handle_set_base_uri(rsvg_handle, filename); + /* Suppress GCC deprecation warnings starting in librsvg 2.45.1 for + rsvg_handle_write and rsvg_handle_close. FIXME: Use functions + like rsvg_handle_new_from_gfile_sync on newer librsvg versions, + and remove this hack. */ + #if GNUC_PREREQ (4, 6, 0) + #pragma GCC diagnostic push + #endif + #if LIBRSVG_CHECK_VERSION (2, 45, 1) && GNUC_PREREQ (4, 2, 0) + #pragma GCC diagnostic ignored "-Wdeprecated-declarations" + #endif + /* Parse the contents argument and fill in the rsvg_handle. */ rsvg_handle_write (rsvg_handle, (unsigned char *) contents, size, &err); if (err) goto rsvg_error; @@ -9315,6 +9326,10 @@ svg_load_image (struct frame *f, struct image *img, char *contents, rsvg_handle_close (rsvg_handle, &err); if (err) goto rsvg_error; + #if GNUC_PREREQ (4, 6, 0) + #pragma GCC diagnostic pop + #endif + rsvg_handle_get_dimensions (rsvg_handle, &dimension_data); if (! check_image_size (f, dimension_data.width, dimension_data.height)) { ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: Emacs master build failing on RHEL 6.8 [image.c] 2019-06-08 14:24 ` Richard Kim @ 2022-01-16 18:09 ` Eli Zaretskii 0 siblings, 0 replies; 6+ messages in thread From: Eli Zaretskii @ 2022-01-16 18:09 UTC (permalink / raw) To: emacs18; +Cc: emacs-devel > From: Richard Kim <emacs18@gmail.com> > Date: Sat, 08 Jun 2019 07:24:34 -0700 > > Actually I too ran into compile failure on Red Hat 6.6. The root cause > was that the change shown below added code referring to > LIBRSVG_CHECK_VERSION macro which is not defined for me. It is defined either by librsvg headers or, failing that, around line 10175 of image.c ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: Emacs master build failing on RHEL 6.8 [image.c] 2019-06-04 19:36 ` Kaushal Modi 2019-06-08 14:24 ` Richard Kim @ 2019-06-10 2:01 ` Kaushal Modi 1 sibling, 0 replies; 6+ messages in thread From: Kaushal Modi @ 2019-06-10 2:01 UTC (permalink / raw) To: Paul Eggert; +Cc: Emacs developers [-- Attachment #1: Type: text/plain, Size: 686 bytes --] On Tue, Jun 4, 2019 at 3:36 PM Kaushal Modi <kaushal.modi@gmail.com> wrote: > > I'll update here if I figure this out. > Turns out that I have both libgif 4.1.6 and libgif 5.1.0 on my system. In some juggling of LD_LIBRARY_PATH and INCLUDE_PATH, the gif_lib.h of v5.1.0 got read, but the libgif.so of v4.1.6 got used (even though the newer v5.1.0 libgif.so was in the LD_LIBRARY_PATH too). To fix this, I moved the "-L/path/containing/5.1.0.so" *before* the "-L/path/containing/4.1.6.so" and this issue got fixed. After this builds fine properly, I will move libgif/libungif 4.1.6 completely out of LD_LIBRARY_PATH and INCLUDE_PATH (not sure why libungif doesn't exist for 5.1.0). [-- Attachment #2: Type: text/html, Size: 1349 bytes --] ^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2022-01-16 18:09 UTC | newest] Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2019-06-04 11:49 Emacs master build failing on RHEL 6.8 [image.c] Kaushal Modi 2019-06-04 19:17 ` Paul Eggert 2019-06-04 19:36 ` Kaushal Modi 2019-06-08 14:24 ` Richard Kim 2022-01-16 18:09 ` Eli Zaretskii 2019-06-10 2:01 ` Kaushal Modi
Code repositories for project(s) associated with this public inbox https://git.savannah.gnu.org/cgit/emacs.git This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).