htmlcxx-0.87 fails to build

  • Done
  • quality assurance status badge
Details
4 participants
  • Arne Babenhauserheide
  • Dr. Arne Babenhauserheide
  • Efraim Flashner
  • Bruno Victal
Owner
unassigned
Submitted by
Arne Babenhauserheide
Severity
normal
A
A
Arne Babenhauserheide wrote on 18 May 2023 17:17
(address . bug-guix@gnu.org)
trinity-ef0e05ea-e048-4fe0-98d9-45c6dde05639-1684423068739@3c-app-webde-bap11
Hi,

To reproduce: guix build htmlcxx — it blocks several dependents.

The relevant part of the error:

In file included from CharsetConverter.cc:5:
CharsetConverter.h:20:90: error: ISO C++17 does not allow dynamic exception specifications
20 | CharsetConverter(const std::string &from, const std::string &to) throw (Exception);

These were deprecated in C++11 and removed in C++17: https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2016/p0003r5.html

So this may just need compiler parameters to set C++11 instead of C++17
as target.

A first step towards the fix might be

Toggle diff (26 lines)
diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm
index 6e79fe99b8..9c1319f3af 100644
--- a/gnu/packages/web.scm
+++ b/gnu/packages/web.scm
@@ -8130,6 +8130,9 @@ (define-public htmlcxx
(sha256
(base32 "1j3mzjlczjrk4ahc43s6kzpvzypzjmqz4sillnca5yadrwwgjf2x"))))
(build-system gnu-build-system)
+ (arguments
+ ;; ISO C++17 does not allow dynamic exception specifications
+ `(#:configure-flags '("CXXFLAGS=-std=c++11")))
(home-page "https://htmlcxx.sourceforge.net/")
(synopsis "Simple non-validating CSS1 and HTML parser for C++")
(description "htmlcxx is a simple non-validating CSS1 and HTML parser for


The complete log is attached.

Best wishes,
Arne

--
unpolitisch sein
heißt politisch sein, 
ohne es zu merken. 
- ArneBab
B
B
Bruno Victal wrote on 18 May 2023 19:51
(name . Arne Babenhauserheide)(address . Arne_Bab@web.de)(address . 63572@debbugs.gnu.org)
fb9dde16-e5b6-55e2-c992-de3d215049f7@makinata.eu
Hi Arne,

On 2023-05-18 16:17, Arne Babenhauserheide wrote:
Toggle quote (15 lines)
> Hi,
>
> To reproduce: guix build htmlcxx — it blocks several dependents.
>
> The relevant part of the error:
>
> In file included from CharsetConverter.cc:5:
> CharsetConverter.h:20:90: error: ISO C++17 does not allow dynamic exception specifications
> 20 | CharsetConverter(const std::string &from, const std::string &to) throw (Exception);
>
> These were deprecated in C++11 and removed in C++17: https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2016/p0003r5.html
>
> So this may just need compiler parameters to set C++11 instead of C++17
> as target.

it looks to me that upstream has moved to https://github.com/bonitao/htmlcxx. (judging by the name of the repo owner)
Can you try asking upstream for a new release? The last commit (https://github.com/bonitao/htmlcxx/commit/0ffa3e90b7dc3944f199fd80ab47c2a82589209a)
has the message 'Fix c+11 compilation'.


Cheers,
Bruno
D
D
Dr. Arne Babenhauserheide wrote on 20 May 2023 23:43
(name . Bruno Victal)(address . mirai@makinata.eu)(address . 63572@debbugs.gnu.org)
87ilcmekrr.fsf@web.de
Hi Bruno,

Bruno Victal <mirai@makinata.eu> writes:
Toggle quote (8 lines)
>> So this may just need compiler parameters to set C++11 instead of C++17
>> as target.
>
> Looking at the README file from <https://sourceforge.net/p/htmlcxx/code/ci/master/tree/>,
> it looks to me that upstream has moved to <https://github.com/bonitao/htmlcxx>. (judging by the name of the repo owner)
> Can you try asking upstream for a new release? The last commit (<https://github.com/bonitao/htmlcxx/commit/0ffa3e90b7dc3944f199fd80ab47c2a82589209a>)
> has the message 'Fix c+11 compilation'.

I tried to build from the latest commit, but it did not build.

But I could now test adding the std argument and that works.

$ ./pre-inst-env guix build htmlcxx
/gnu/store/3bqrqs2zzx1gy4xc1g9i59z8nnhwv2rs-htmlcxx-0.87

A patch is attached.
From 0a5478a83129efa07fc366c01f793c809a42ce99 Mon Sep 17 00:00:00 2001
Message-Id: <0a5478a83129efa07fc366c01f793c809a42ce99.1684619285.git.arne_bab@web.de>
From: Arne Babenhauserheide <arne_bab@web.de>
Date: Sat, 20 May 2023 23:45:43 +0200
Subject: [PATCH] gnu: htmlcxx: add --std=c++11 to configure flags.

* gnu/packages/web.scm (htmlcxx): add CXXFLAGS to configure-flag. C++17
removed dynamic exception specifications.
---
gnu/packages/web.scm | 3 +++
1 file changed, 3 insertions(+)

Toggle diff (18 lines)
diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm
index fe52f673e2..aa9d23f19c 100644
--- a/gnu/packages/web.scm
+++ b/gnu/packages/web.scm
@@ -8248,6 +8248,9 @@ (define-public htmlcxx
(sha256
(base32 "1j3mzjlczjrk4ahc43s6kzpvzypzjmqz4sillnca5yadrwwgjf2x"))))
(build-system gnu-build-system)
+ (arguments
+ ;; ISO C++17 does not allow dynamic exception specifications
+ `(#:configure-flags '("CXXFLAGS=-std=c++11")))
(home-page "https://htmlcxx.sourceforge.net/")
(synopsis "Simple non-validating CSS1 and HTML parser for C++")
(description "htmlcxx is a simple non-validating CSS1 and HTML parser for

base-commit: bd7b795aeb9d35ac7b825ad4d0cf0088f18e1167
--
2.40.1
Best wishes,
Arne
--
Unpolitisch sein
heißt politisch sein,
ohne es zu merken.
draketo.de
-----BEGIN PGP SIGNATURE-----

iQJEBAEBCAAuFiEE801qEjXQSQPNItXAE++NRSQDw+sFAmRpQFgQHGFybmVfYmFi
QHdlYi5kZQAKCRAT741FJAPD6yhCD/91tpgDktonlrtDPX45Jcjn254zfDoVmCeU
DCirH/yViCLOfTM9kE+kQ61zS9s0oKCYKqtAZ90XFs/UAAsdMiE4ON+AbUbWxcv5
al12Euyx8abyLzqgIjasU2po9kIicYFfcXedNVVvz3US0HVZX3r22WWsouR1uvGl
7ZuS5dnt95voBH8rIwN2L2AS5fBo787zpZkIi/LsN7Mxhz0hpuZ7WAHPV4B83LYg
pUstvaaC0HunU+d4DBolnA49yTVoWa5nyBZm4YvRCtrXIRbbajwSK5Rx5VFKo4Mc
31ZuTQ9VBUcJi4T4vsnLZAS1ffbvD/2Wf6mCpaMfM0zK5e2nVMGGtOI/1IjPgXue
N+86Y4e9L06O+wbdQ0XkojWyZdwbfDFkrvaugoof6GSiAdAVGuxnD13BCyopRbjC
ybbTmqrnCjZrufDBdThE0H2GD/a0NWZLZQuZJPNSF8+GISCLLjlSgzW5O7RpGZrE
MdFucWdRMTw1wCG+Lc03Fm1jI23SOvFTWEi+HSVVlPVIIM/KxsbPWHQSibVdrOz+
PsiYZ4rC8e3tEBRhKKQyKluFgLH2XncDCFSwf4YLfvT72isd8dDs8tcrnFgCUPmE
Zr/PhUkcIFAUbE1HlLnirM0NmGlre9xJa8hEBHmjWRelAGoRsIgjFxEz0PPmfV5B
Sh2H5/0gw4jEBAEBCAAuFiEE3Si95tmHXKvOSosd3M8NswvBBUgFAmRpQFgQHGFy
bmVfYmFiQHdlYi5kZQAKCRDczw2zC8EFSFohA/0Ucq9pl/iMiuEGz5DLMp4ONghu
7uq4y+G7rEM0fZYqwWffPCRH/0X3v83h2rr1PB9tBxlkFF8siSS/oIIpJDeM+HUB
eB4viFV4tbmfVupLLyAXpfnwO2fEjJqAQnVaCXAmYwR4ltgxPaUH0GTiDH7wIVTq
HvgFkt9skIZLIHx3/w==
=YsOy
-----END PGP SIGNATURE-----

E
E
Efraim Flashner wrote on 24 May 2023 10:43
(name . Dr. Arne Babenhauserheide)(address . arne_bab@web.de)
ZG3ONXCPRfMqHCt4@3900XT
On Sat, May 20, 2023 at 11:43:46PM +0200, Dr. Arne Babenhauserheide wrote:
Toggle quote (15 lines)
> Hi Bruno,
>
> Bruno Victal <mirai@makinata.eu> writes:
> >> So this may just need compiler parameters to set C++11 instead of C++17
> >> as target.
> >
> > Looking at the README file from <https://sourceforge.net/p/htmlcxx/code/ci/master/tree/>,
> > it looks to me that upstream has moved to <https://github.com/bonitao/htmlcxx>. (judging by the name of the repo owner)
> > Can you try asking upstream for a new release? The last commit (<https://github.com/bonitao/htmlcxx/commit/0ffa3e90b7dc3944f199fd80ab47c2a82589209a>)
> > has the message 'Fix c+11 compilation'.
>
> I tried to build from the latest commit, but it did not build.
>
> But I could now test adding the std argument and that works.

Thanks for checking.

Toggle quote (5 lines)
> $ ./pre-inst-env guix build htmlcxx
> /gnu/store/3bqrqs2zzx1gy4xc1g9i59z8nnhwv2rs-htmlcxx-0.87
>
> A patch is attached.

I didn't see any dependant packages. Patch pushed! Thanks.


--
Efraim Flashner <efraim@flashner.co.il> ????? ?????
GPG key = A28B F40C 3E55 1372 662D 14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted
-----BEGIN PGP SIGNATURE-----

iQIzBAABCAAdFiEEoov0DD5VE3JmLRT3Qarn3Mo9g1EFAmRtzjUACgkQQarn3Mo9
g1E0oA/9GEvNZtKQM/POaD2wpCz4BQQ3Ulj6FpqLGxnVKTBMjin6B1PikLzUPVPm
ObXDNteJIjL4gtS6tl4C6EmNW9QOlFuQ9wMbVbXifzaJ8oRFk5VR3ZXi+U5Jwjcj
akRvCXfIClwKweNjf3rUVHoRd8bf1Bs0Agkzpo4mUyu8YIGSfqKJzxZ2YK3AF45z
9nnrXoQnYqSV2ebFtJTteEnnCwhFkEYyGXad4uRU+jouuZUWUb3i+DM1MMGv11ry
vJADCzv0xeBFxQ5cfpFBuoyP+n8m/ui0Lqbm8RdtS+UQ/Z2LfKNz+yG3zHb9Aa9s
rmSWpbcRTFbVtQGkBFdWmk30rucUA3XMFGMxAsysXRTzSv3EPv3wALO2w7W6eNWE
HFBcXQsnudE7cN6KQ68C5TLXwdwELN2yooq5n8pNfNR9bqMJx9ES+bCNU/PFJQ20
eMc6J9hYDW8aLnEUVhBfvuLBGoa6oieR4uv0BWmPP+wAOXosGPphNh3Xa412CK0L
sXDvlDWjRM5d6sATZ5l7GM1Nn98chWvS28DlmhC/4epuALW5k9O38lQ8x3LdyMBE
HsSZL8U/Ha2wFKq/xGi3k+ezEhLiuYEYDgipfk7OuP142MKPB+oJyk5hvxW0sCpG
5p/wibaNRHnndhHmdW4IXVSI6IOF9azgBT+rTdSoTg/TksLKVfM=
=P94S
-----END PGP SIGNATURE-----


Closed
?