GNU bug report logs -
#31095
[aegisub] error: Aegisub requires that boost be built with ICU support.
Previous Next
To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 31095 in the body.
You can then email your comments to 31095 AT debbugs.gnu.org in the normal way.
Toggle the display of automated, internal messages from the tracker.
Report forwarded
to
bug-guix <at> gnu.org
:
bug#31095
; Package
guix
.
(Sun, 08 Apr 2018 12:07:01 GMT)
Full text and
rfc822 format available.
Acknowledgement sent
to
Pierre Neidhardt <ambrevar <at> gmail.com>
:
New bug report received and forwarded. Copy sent to
bug-guix <at> gnu.org
.
(Sun, 08 Apr 2018 12:07:02 GMT)
Full text and
rfc822 format available.
Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
[Message part 1 (text/plain, inline)]
I can't build aegisub:
> guix package --install aegisub
[...]
checking whether boost ICU support works... no
configure: error: in `/tmp/guix-build-aegisub-3.2.2.drv-0/aegisub-3.2.2':
configure: error: Aegisub requires that boost be built with ICU support.
See `config.log' for more details
phase `configure' failed after 7.4 seconds
builder for `/gnu/store/97g8fxipy942yzs0zp5hbvsj90hw1xc6-aegisub-3.2.2.drv' failed with exit code 1
guix package: error: build failed: build of `/gnu/store/97g8fxipy942yzs0zp5hbvsj90hw1xc6-aegisub-3.2.2.drv' failed
It seems that the boost input is missing ICU support.
--
Pierre Neidhardt
[signature.asc (application/pgp-signature, inline)]
Information forwarded
to
bug-guix <at> gnu.org
:
bug#31095
; Package
guix
.
(Sun, 08 Apr 2018 16:07:02 GMT)
Full text and
rfc822 format available.
Message #8 received at 31095 <at> debbugs.gnu.org (full text, mbox):
Hi Pierre,
Pierre Neidhardt <ambrevar <at> gmail.com> writes:
> I can't build aegisub:
>
> > guix package --install aegisub
> [...]
> checking whether boost ICU support works... no
> configure: error: in `/tmp/guix-build-aegisub-3.2.2.drv-0/aegisub-3.2.2':
> configure: error: Aegisub requires that boost be built with ICU support.
> See `config.log' for more details
> phase `configure' failed after 7.4 seconds
> builder for `/gnu/store/97g8fxipy942yzs0zp5hbvsj90hw1xc6-aegisub-3.2.2.drv' failed with exit code 1
> guix package: error: build failed: build of `/gnu/store/97g8fxipy942yzs0zp5hbvsj90hw1xc6-aegisub-3.2.2.drv' failed
>
> It seems that the boost input is missing ICU support.
Indeed. Although our 'boost' package includes 'icu4c' as an input, the
build log contains the following lines in the 'configure' phase and the
start of the 'build' phase:
Unicode/ICU support for Boost.Regex?... not found.
[...]
- has_icu builds : no
[...]
- icu : no
- icu (lib64) : no
These are from local build logs on my GuixSD based on 'core-updates',
but based on your report, I assume that the same problem exists on
'master'.
Our main Boost package has too many dependencies to fix in 'master', but
we could still fix it in 'core-updates'. On master, we could create a
'boost/fixed' package that inherits from the main one but with this
problem fixed, for use by aegisub.
However, the first step is to figure out why 'boost' is failing to find
icu4c. Would you like to investigate?
Mark
Information forwarded
to
bug-guix <at> gnu.org
:
bug#31095
; Package
guix
.
(Sun, 08 Apr 2018 16:16:02 GMT)
Full text and
rfc822 format available.
Message #11 received at 31095 <at> debbugs.gnu.org (full text, mbox):
[Message part 1 (text/plain, inline)]
Thanks for the feedback!
> However, the first step is to figure out why 'boost' is failing to find
> icu4c. Would you like to investigate?
I usually happily answer "yes" to those questions, but this time I'll
pass: aegisub is not really a priority for me at the moment and I don't
have a great opinion of boost, so...
Anyone else? :p
--
Pierre Neidhardt
[signature.asc (application/pgp-signature, inline)]
Information forwarded
to
bug-guix <at> gnu.org
:
bug#31095
; Package
guix
.
(Sun, 08 Apr 2018 19:15:02 GMT)
Full text and
rfc822 format available.
Message #14 received at 31095 <at> debbugs.gnu.org (full text, mbox):
[Message part 1 (text/plain, inline)]
Pierre Neidhardt <ambrevar <at> gmail.com> writes:
> Thanks for the feedback!
>
>> However, the first step is to figure out why 'boost' is failing to find
>> icu4c. Would you like to investigate?
>
> I usually happily answer "yes" to those questions, but this time I'll
> pass: aegisub is not really a priority for me at the moment and I don't
> have a great opinion of boost, so...
>
> Anyone else? :p
That's okay, I appreciate the bug report nonetheless.
I worked on it, and the following preliminary patch seems to fix the
problem for me on 'core-updates'. I didn't try building aegisub, but
boost builds with messages suggesting that ICU support is now included.
If someone's motivated to do so, they could fix 'aegisub' on master by
adding a 'boost/fixed' package that inherits from 'boost' but includes
the fixes included in the following patch.
Mark
[0001-gnu-boost-Fix-ICU-support.patch (text/x-patch, inline)]
From 62a9ef1337010771c9f79c64e7b84a855c45df1f Mon Sep 17 00:00:00 2001
From: Mark H Weaver <mhw <at> netris.org>
Date: Sun, 8 Apr 2018 14:40:00 -0400
Subject: [PATCH] gnu: boost: Fix ICU support.
* gnu/packages/patches/boost-fix-icu-build.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/boost.scm (boost)[source]: Add the patch.
[arguments]: In the custom configure phase, pass --with-icu=...
to ./bootstrap.sh
---
gnu/local.mk | 1 +
gnu/packages/boost.scm | 13 ++++--
gnu/packages/patches/boost-fix-icu-build.patch | 59 ++++++++++++++++++++++++++
3 files changed, 69 insertions(+), 4 deletions(-)
create mode 100644 gnu/packages/patches/boost-fix-icu-build.patch
diff --git a/gnu/local.mk b/gnu/local.mk
index 6cf49ad07..5888d32f5 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -577,6 +577,7 @@ dist_patch_DATA = \
%D%/packages/patches/bcftools-regidx-unsigned-char.patch \
%D%/packages/patches/binutils-loongson-workaround.patch \
%D%/packages/patches/blast+-fix-makefile.patch \
+ %D%/packages/patches/boost-fix-icu-build.patch \
%D%/packages/patches/btrfs-progs-e-value-block.patch \
%D%/packages/patches/byobu-writable-status.patch \
%D%/packages/patches/cairo-CVE-2016-9082.patch \
diff --git a/gnu/packages/boost.scm b/gnu/packages/boost.scm
index 674877a88..6b17e30a8 100644
--- a/gnu/packages/boost.scm
+++ b/gnu/packages/boost.scm
@@ -1,6 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2014 John Darrington <jmd <at> gnu.org>
-;;; Copyright © 2014, 2015 Mark H Weaver <mhw <at> netris.org>
+;;; Copyright © 2014, 2015, 2018 Mark H Weaver <mhw <at> netris.org>
;;; Copyright © 2015 Andreas Enge <andreas <at> enge.fr>
;;; Copyright © 2016 Eric Bavier <bavier <at> member.fsf.org>
;;; Copyright © 2015 Ludovic Courtès <ludo <at> gnu.org>
@@ -52,7 +52,8 @@
".tar.bz2"))
(sha256
(base32
- "1aaw48cmimsskzgiclwn0iifp62a5iw9cbqrhfari876af1828ap"))))
+ "1aaw48cmimsskzgiclwn0iifp62a5iw9cbqrhfari876af1828ap"))
+ (patches (search-patches "boost-fix-icu-build.patch"))))
(build-system gnu-build-system)
(inputs `(("icu4c" ,icu4c)
("zlib" ,zlib)))
@@ -81,8 +82,9 @@
(modify-phases %standard-phases
(delete 'bootstrap)
(replace 'configure
- (lambda* (#:key outputs #:allow-other-keys)
- (let ((out (assoc-ref outputs "out")))
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ (let ((icu (assoc-ref inputs "icu4c"))
+ (out (assoc-ref outputs "out")))
(substitute* '("libs/config/configure"
"libs/spirit/classic/phoenix/test/runtest.sh"
"tools/build/doc/bjam.qbk"
@@ -96,6 +98,9 @@
(invoke "./bootstrap.sh"
(string-append "--prefix=" out)
+ ;; Auto-detection looks for ICU only in traditional
+ ;; install locations.
+ (string-append "--with-icu=" icu)
"--with-toolset=gcc"))))
(replace 'build
(lambda* (#:key make-flags #:allow-other-keys)
diff --git a/gnu/packages/patches/boost-fix-icu-build.patch b/gnu/packages/patches/boost-fix-icu-build.patch
new file mode 100644
index 000000000..389f60e30
--- /dev/null
+++ b/gnu/packages/patches/boost-fix-icu-build.patch
@@ -0,0 +1,59 @@
+Pass -std=c++11 when compiling files that include the ICU headers. Without
+this flag, compilation fails and causes Boost's build system to remove ICU
+support. Note that $(pkg-config --variable=CXXFLAGS icu-uc) includes
+"-std=c++11", but Boost's build system does not use 'pkg-config'.
+
+--- boost_1_66_0/libs/locale/build/Jamfile.v2.orig 2017-12-13 18:56:44.000000000 -0500
++++ boost_1_66_0/libs/locale/build/Jamfile.v2 2018-04-08 14:13:17.953484787 -0400
+@@ -65,8 +65,8 @@
+
+ if $(ICU_LINK)
+ {
+- ICU_OPTS = <include>$(ICU_PATH)/include <linkflags>$(ICU_LINK) <dll-path>$(ICU_PATH)/bin <runtime-link>shared ;
+- ICU64_OPTS = <include>$(ICU_PATH)/include <linkflags>$(ICU_LINK) <dll-path>$(ICU_PATH)/bin64 <runtime-link>shared ;
++ ICU_OPTS = <include>$(ICU_PATH)/include <cxxflags>-std=c++11 <linkflags>$(ICU_LINK) <dll-path>$(ICU_PATH)/bin <runtime-link>shared ;
++ ICU64_OPTS = <include>$(ICU_PATH)/include <cxxflags>-std=c++11 <linkflags>$(ICU_LINK) <dll-path>$(ICU_PATH)/bin64 <runtime-link>shared ;
+ }
+ else
+ {
+@@ -120,7 +120,8 @@
+
+ explicit icuuc icudt icuin ;
+
+- ICU_OPTS = <include>$(ICU_PATH)/include
++ ICU_OPTS = <include>$(ICU_PATH)/include
++ <cxxflags>-std=c++11
+ <library>icuuc/<link>shared/<runtime-link>shared
+ <library>icudt/<link>shared/<runtime-link>shared
+ <library>icuin/<link>shared/<runtime-link>shared
+@@ -179,7 +180,8 @@
+
+ explicit icuuc_64 icudt_64 icuin_64 ;
+
+- ICU64_OPTS = <include>$(ICU_PATH)/include
++ ICU64_OPTS = <include>$(ICU_PATH)/include
++ <cxxflags>-std=c++11
+ <library>icuuc_64/<link>shared/<runtime-link>shared
+ <library>icudt_64/<link>shared/<runtime-link>shared
+ <library>icuin_64/<link>shared/<runtime-link>shared
+--- boost_1_66_0/libs/regex/build/Jamfile.v2.orig 2017-12-13 18:56:48.000000000 -0500
++++ boost_1_66_0/libs/regex/build/Jamfile.v2 2018-04-08 14:11:56.405080410 -0400
+@@ -44,7 +44,7 @@
+
+ if $(ICU_LINK)
+ {
+- ICU_OPTS = <include>$(ICU_PATH)/include <linkflags>$(ICU_LINK) <dll-path>$(ICU_PATH)/bin <define>BOOST_HAS_ICU=1 <runtime-link>shared ;
++ ICU_OPTS = <include>$(ICU_PATH)/include <cxxflags>-std=c++11 <linkflags>$(ICU_LINK) <dll-path>$(ICU_PATH)/bin <define>BOOST_HAS_ICU=1 <runtime-link>shared ;
+ }
+ else
+ {
+@@ -77,7 +77,8 @@
+ lib icuin : : <name>this_is_an_invalid_library_name ;
+
+ ICU_OPTS =
+- <include>$(ICU_PATH)/include
++ <include>$(ICU_PATH)/include
++ <cxxflags>-std=c++11
+ <runtime-link>shared:<library>icuuc/<link>shared
+ <runtime-link>shared:<library>icudt/<link>shared
+ <runtime-link>shared:<library>icuin/<link>shared
--
2.16.3
Information forwarded
to
bug-guix <at> gnu.org
:
bug#31095
; Package
guix
.
(Tue, 10 Apr 2018 06:34:02 GMT)
Full text and
rfc822 format available.
Message #17 received at 31095 <at> debbugs.gnu.org (full text, mbox):
On core-updates I pushed commit 713c975ac0aa01c224b215fcb96274b76920c90b
which hopefully will fix this problem with the aegisub build. We'll see
when Hydra builds it out.
Mark
Reply sent
to
Leo Famulari <leo <at> famulari.name>
:
You have taken responsibility.
(Fri, 02 Nov 2018 05:20:01 GMT)
Full text and
rfc822 format available.
Notification sent
to
Pierre Neidhardt <ambrevar <at> gmail.com>
:
bug acknowledged by developer.
(Fri, 02 Nov 2018 05:20:02 GMT)
Full text and
rfc822 format available.
Message #22 received at 31095-done <at> debbugs.gnu.org (full text, mbox):
[Message part 1 (text/plain, inline)]
On Tue, Apr 10, 2018 at 02:32:05AM -0400, Mark H Weaver wrote:
> On core-updates I pushed commit 713c975ac0aa01c224b215fcb96274b76920c90b
> which hopefully will fix this problem with the aegisub build. We'll see
> when Hydra builds it out.
It seems to have worked, thanks!
[signature.asc (application/pgp-signature, inline)]
Information forwarded
to
bug-guix <at> gnu.org
:
bug#31095
; Package
guix
.
(Sun, 25 Nov 2018 18:00:01 GMT)
Full text and
rfc822 format available.
Message #25 received at 31095 <at> debbugs.gnu.org (full text, mbox):
[Message part 1 (text/plain, inline)]
On Fri, 2 Nov 2018 01:19:42 -0400
Leo Famulari <leo <at> famulari.name> wrote:
> On Tue, Apr 10, 2018 at 02:32:05AM -0400, Mark H Weaver wrote:
> > On core-updates I pushed commit
> > 713c975ac0aa01c224b215fcb96274b76920c90b which hopefully will fix
> > this problem with the aegisub build. We'll see when Hydra builds
> > it out.
>
> It seems to have worked, thanks!
Hi Leo,
I don't understand that: When looking at the core-updates page of
aegisub, I see no success:
https://hydra.gnu.org/job/gnu/core-updates/aegisub-3.2.2.x86_64-linux/all
When building locally, I see this failure:
/tmp/guix-build-aegisub-3.2.2.drv-0/aegisub-3.2.2/src/search_replace_engine.cpp:
In member function ?bool SearchReplaceEngine::ReplaceAll()?:
/tmp/guix-build-aegisub-3.2.2.drv-0/aegisub-3.2.2/src/search_replace_engine.cpp:317:61: error: call of overloaded ?distance(boost::u32regex_iterator<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >, boost::u32regex_iterator<__gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> > >)? is ambiguous
boost::u32regex_iterator<std::string::const_iterator>());
I found a patch here:
https://git.archlinux.org/svntogit/community.git/plain/trunk/boost-1.68.patch?h=packages/aegisub
When I apply it, aegisub works on core-updates.
I will send out a proper guix-patch later.
Björn
[Message part 2 (application/pgp-signature, inline)]
Information forwarded
to
bug-guix <at> gnu.org
:
bug#31095
; Package
guix
.
(Sun, 25 Nov 2018 19:45:02 GMT)
Full text and
rfc822 format available.
Message #28 received at 31095 <at> debbugs.gnu.org (full text, mbox):
[Message part 1 (text/plain, inline)]
On Sun, 25 Nov 2018 18:58:49 +0100
Björn Höfling <bjoern.hoefling <at> bjoernhoefling.de> wrote:
> I found a patch here:
>
> https://git.archlinux.org/svntogit/community.git/plain/trunk/boost-1.68.patch?h=packages/aegisub
>
> When I apply it, aegisub works on core-updates.
>
> I will send out a proper guix-patch later.
>
> Björn
>
Sent out as:
https://debbugs.gnu.org/cgi/bugreport.cgi?bug=33505
Björn
[Message part 2 (application/pgp-signature, inline)]
bug archived.
Request was from
Debbugs Internal Request <help-debbugs <at> gnu.org>
to
internal_control <at> debbugs.gnu.org
.
(Mon, 24 Dec 2018 12:24:05 GMT)
Full text and
rfc822 format available.
This bug report was last modified 5 years and 125 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.