Menu

#34 AVaRICE 2.14 won't compile on Arch Linux

v1.0_(example)
closed-fixed
5
2021-08-23
2021-05-27
No

I get the following errors on compilation:

In file included from jtag2bp.cc:39:
jtag2.h:159:52: error: ISO C++17 does not allow dynamic exception specifications
  159 |                        bool retryOnTimeout = true) throw(jtag_exception);
      |                                                    ^~~~~

Discussion

  • Anonymous

    Anonymous - 2021-05-28

    A temporary solution was found to be to change the C++ compile version to be C++ 14.

    On Arch Linux, for building this package from the AUR the solution is to add

    CXXFLAGS="-std=c++14"
    

    to the top of the build() function in PKGBUILD.

    From this, I can venture a guess to say that AVaRICE just needs to be updated to support C++17.

     
  • Joris Putcuyps

    Joris Putcuyps - 2021-08-04

    I've created a small patch to specify an older C++ standard.

     
  • Joerg Wunsch

    Joerg Wunsch - 2021-08-11

    Well, frankly, I'd very much prefer to have a patch fixing the source code so it compiles on a newer compiler without warnings, rather than back-dating the compiler.

     
  • Joris Putcuyps

    Joris Putcuyps - 2021-08-11

    I also prefer that, but this is the smallest step with the least amount of risk.
    When I have time I'll have a stab at a bigger patch if someone is willing to review and apply it?

     
  • Joerg Wunsch

    Joerg Wunsch - 2021-08-11

    I'm willing to review and apply a patch, but my C++ knowledge (in particular regarding modern C++) is close to 0, so without a lot of Internet research, I wouldn't know how to fix that properly right now.

     
  • Joerg Wunsch

    Joerg Wunsch - 2021-08-23
    • status: open --> closed-fixed
    • assigned_to: Joerg Wunsch
     
  • Joerg Wunsch

    Joerg Wunsch - 2021-08-23

    Fixed by patch #40

     

Log in to post a comment.

MongoDB Logo MongoDB