Subject: bug#36951: closed (guile-sly will not build)

From: [email-masked] (GNU bug Tracking System)
Date: Sun, 27 Sep 2020 14:18:02 +0000

Your bug report

#36951: guile-sly will not build

which was filed against the guix package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to [email-masked].

-- 
36951: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=36951
GNU Bug Tracking System
Contact [email-masked] with problems

Subject: guile-sly will not build
From: Jesse Gibbons <[email-masked]>
To: [email-masked]
Date: Sun, 27 Sep 2020 08:17:40 -0600
List-Id: <debbugs-submit.debbugs.gnu.org>

I just checked this, it seems to have been fixed.

Subject: guile-sly will not build
From: Jesse Gibbons <[email-masked]>
To: bug-guix mailing list <[email-masked]>
Date: Tue, 06 Aug 2019 22:20:48 -0600
List-Id: <debbugs-submit.debbugs.gnu.org>

When I try `guix build guile-sly` it gives the error "configure: error:
freeimage not found."

When I try to manually build guile-sly, I get additional information:
ld: /gnu/store/86mrl4m1i90wirwzxrri7xybk5nki7hc-
profile/lib/libfreeimage.so: undefined reference to `PerfTimerStart'
ld: /gnu/store/86mrl4m1i90wirwzxrri7xybk5nki7hc-
profile/lib/libfreeimage.so: undefined reference to
`PerfTimerCopyStartTime'
ld: /gnu/store/86mrl4m1i90wirwzxrri7xybk5nki7hc-
profile/lib/libfreeimage.so: undefined reference to
`PerfTimerGetResults'
ld: /gnu/store/86mrl4m1i90wirwzxrri7xybk5nki7hc-
profile/lib/libfreeimage.so: undefined reference to `PerfTimerStop'
ld: /gnu/store/86mrl4m1i90wirwzxrri7xybk5nki7hc-
profile/lib/libfreeimage.so: undefined reference to `PerfTimerDelete'
ld: /gnu/store/86mrl4m1i90wirwzxrri7xybk5nki7hc-
profile/lib/libfreeimage.so: undefined reference to `PerfTimerNew'
collect2: error: ld returned 1 exit status

I looked into freeimage. The missing function reference should be
defined in the libjxr bundled with freeimage.

Some related history:
- commit a5d4c96b8d90b8bb87e07bd6a7be78991db91bc9 (http://git.savannah.
gnu.org/cgit/guix.git/commit/gnu/packages/image.scm?id=a5d4c96b8d90b8bb
87e07bd6a7be78991db91bc9) gnu: freeimage: Remove bundled libraries.
- commit f347c24acc14e080dc2801561edca0d525a90257 (http://git.savannah.
gnu.org/cgit/guix.git/commit/gnu/packages/image.scm?id=f347c24acc14e080
dc2801561edca0d525a90257) gnu: freeimage: Use bundled libjxr.

- bug #28261 (https://issues.guix.gnu.org/issue/28261) freeimage uses
bundled libraries

- commit 37dc29200c44adc0474476b8df46ed44e8a1d41a (http://git.savannah.
gnu.org/cgit/guix.git/commit/gnu/packages/maths.scm?id=37dc29200c44adc0
474476b8df46ed44e8a1d41a) gnu: Add opencascade-occt.

- bug #34013 (https://issues.guix.gnu.org/issue/34013) [PATCH 1/2] gnu:
libjxr: Build and install shared library.

It seems commit f347c24acc14e080dc2801561edca0d525a90257 was an attempt
to fix guile-sly, but it looks like it was unsuccessful.

Commit 37dc29200c44adc0474476b8df46ed44e8a1d41a mentions a similar
issue and has a work-around. I do not think the configure script will
be as cooperative with this work-around because it checks for FreeImage
unconditionally.

- bug #34013 was a patch submitted in January but nobody has responded
to it. I don't know if it will fix this issue, but it's worth
reviewing.

-- 
-Jesse