FTBFS with new poppler: ‘starts_with’ has not been declared

Bug #2070403 reported by Andreas Hasenack
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
openboard (Ubuntu)
Fix Released
Undecided
Andreas Hasenack

Bug Description

https://launchpadlibrarian.net/736232105/buildlog_ubuntu-oracular-amd64.openboard_1.6.4+dfsg-1build9_BUILDING.txt.gz

In file included from /usr/include/poppler/Object.h:44,
                 from src/pdf/XPDFRenderer.h:48,
                 from src/pdf/PDFRenderer.cpp:35:
/usr/include/poppler/goo/GooString.h:241:24: error: ‘starts_with’ has not been declared in ‘std::string’
  241 | using std::string::starts_with;
      | ^~~~~~~~~~~
/usr/include/poppler/goo/GooString.h:244:24: error: ‘ends_with’ has not been declared in ‘std::string’
  244 | using std::string::ends_with;
      | ^~~~~~~~~
In file included from /usr/include/poppler/Object.h:690:
/usr/include/poppler/Stream.h:300:26: error: ‘std::span’ has not been declared
  300 | virtual size_t write(std::span<unsigned char> data) = 0;
      | ^~~
/usr/include/poppler/Stream.h:300:35: error: expected ‘,’ or ‘...’ before ‘<’ token
  300 | virtual size_t write(std::span<unsigned char> data) = 0;
      | ^
/usr/include/poppler/Stream.h:321:18: error: ‘std::span’ has not been declared
  321 | size_t write(std::span<unsigned char> data) override;
      | ^~~
/usr/include/poppler/Stream.h:321:27: error: expected ‘,’ or ‘...’ before ‘<’ token
  321 | size_t write(std::span<unsigned char> data) override;
      | ^

Same as https://launchpad.net/bugs/2070284

Related branches

Revision history for this message
Andreas Hasenack (ahasenack) wrote :

This was fixed upstream, but after they switched to a cmake buildsystem:

https://github.com/OpenBoard-org/OpenBoard/pull/961

And

https://github.com/OpenBoard-org/OpenBoard/pull/962

Revision history for this message
Andreas Hasenack (ahasenack) wrote :

I have a branch at [1] with the attached patch applied. The package builds with that patch, but I'm not sure it's the right fix. What the patch does is switch the C++ standard to 20 eveywhere. There was an existing patch which had to bump the standard to C++17 a while back, due to another poppler change, but changing that line to C++20 was not enough to fix the build this time.

I think it would be better to update to the latest upstream version and go from there, but we depend on debian for that.

1. https://code.launchpad.net/~ahasenack/ubuntu/+source/openboard/+git/openboard

tags: added: update-excuse
tags: added: patch
Revision history for this message
Andreas Hasenack (ahasenack) wrote :

Uploaded.

Changed in openboard (Ubuntu):
status: Confirmed → Fix Committed
assignee: nobody → Andreas Hasenack (ahasenack)
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package openboard - 1.6.4+dfsg-1ubuntu1

---------------
openboard (1.6.4+dfsg-1ubuntu1) oracular; urgency=medium

  * Fix FTBFS with new poppler 24.06 (LP: #2070403):
    - d/p/2010_fix-poppler2406-build.patch: bump C++ standard to version
      20, as was done by poppler
    - d/p/2010_fix-poppler22-build.patch: removed and replaced by the
      patch above

 -- Andreas Hasenack <email address hidden> Wed, 26 Jun 2024 13:27:05 +0000

Changed in openboard (Ubuntu):
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.