Skip to content

Support Ubuntu Jammy 22.04 #580

Description

@mcserep

Ubuntu 22.04 (Jammy Jellyfish) is out, we shall support it officially.
We shall still continue to support Ubuntu 18.04, as the EOL is 2023 April and the current ELX release still depends on it as far as I know.

Activity

  1. added
    Target: Developer environmentDeveloper environment issues consist of CodeCompass or 3rd-party build tooling, configuration or CI.
    on May 26, 2022
  2. added this to the Release Gershwin milestone on May 26, 2022
  3. self-assigned this
    on Jun 13, 2022
  4. intjftw commented on Jun 15, 2022

    @intjftw
    Contributor

    A couple issues with this:

    • LLVM 10 is not available to install from apt in Ubuntu 22.04. LLVM 11 to 14 are available.
    • LLVM 10+ had some modifications in the methods we use so upgrading requires some updates to our code as well.
    • The problem with ODB in Ubuntu 18.04 re-emerged in 22.04. We need to manually compile ODB.
    • Only Thrift 0.16.0 is available in Ubuntu 22.04 which is - of course - not backward-compatible, so we need to manually compile Thrift 0.13.0 as well.
    • There are a few missing header inclusions in our files which g++ 11 refuses to complement, so those should be added.
  5. mcserep commented on Sep 18, 2022

    @mcserep
    CollaboratorAuthor

    My suggestions:

    • Drop support for Ubuntu 18.04. Its EOL is already near anyway and one problem less here.
    • Use LLVM 11, which can be installed from the standard APT repository both for Ubuntu 20.04 and 22.04.
    • If we need manual compilation for ODB on Ubuntu 22.04, it is a shame, but we have no other choice if the packaged version in the APT repository is incorrect.
    • We shall stay with Thrift 0.13.0 for now and compile it manually on Ubuntu 22.04. Most of the developers still use Ubuntu 20.04. Later, in a separate ticker, we can upgrade to Thrift 0.16.0, update the codebase and require manual compilation on Ubuntu 20.04.
  6. changed the title [-]Support Ubuntu Jammy[/-] [+]Support Ubuntu Jammy 22.04[/+] on Sep 26, 2022
  7. mcserep commented on Oct 4, 2022

    @mcserep
    CollaboratorAuthor

    The Ubuntu 18.04 CI jobs failed both for #582 and #584 recently. It seems Thrift 0.13.0 does not compile anymore on Ubuntu 18.04:

    CSC : error CS7027: Error signing output with public key from file 'thrift.snk' -- File not found. [/home/runner/thrift-0.13.0/lib/netstd/Thrift/Thrift.csproj]

    Another reason to drop support for Ubuntu 18.04 😄

  8. tiaanwessels commented on Jun 30, 2023

    @tiaanwessels

    I'd like to experiment with CodeCompass on Ubuntu 22 but get the following when i build it:
    [ 20%] Building CXX object service/authentication/CMakeFiles/authenticationthrift.dir/gen-cpp/authentication_constants.cpp.o
    cc1plus: fatal error: /home/skim/CodeCompass/Build/service/authentication/gen-cpp/authentication_constants.cpp: No such file or directory
    compilation terminated.

  9. mcserep commented on Jun 30, 2023

    @mcserep
    CollaboratorAuthor

    I'd like to experiment with CodeCompass on Ubuntu 22 but get the following when i build it: [ 20%] Building CXX object service/authentication/CMakeFiles/authenticationthrift.dir/gen-cpp/authentication_constants.cpp.o cc1plus: fatal error: /home/skim/CodeCompass/Build/service/authentication/gen-cpp/authentication_constants.cpp: No such file or directory compilation terminated.

    @tiaanwessels We are still working on to make CodeCompass easy to build on Ubuntu 22.04, with the packages available in the standard repository. Meanwhile please prefer to use Ubuntu 20.04. (We also have Docker images for that.)

  10. mcserep commented on Sep 20, 2023

    @mcserep
    CollaboratorAuthor

    @tiaanwessels While working on #629, I also found this issue you mentioned. The reason is that have you most likely installed a newer version of Thrift than 0.13, and they are not backward-compatible, as the major version is still 0. Please follow the updated build instructions and compile Thrift from source.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

Target: Developer environmentDeveloper environment issues consist of CodeCompass or 3rd-party build tooling, configuration or CI.

Type

No type

Projects

  • Status
    Done

Relationships

None yet

Development

No branches or pull requests

Issue actions