Skip to content

Hints for how cmake chooses which version of LLVM to link with irony-server #590

Open
@sten0

Description

@sten0

Hi @Sarcasm,

I've made progress with enabling "triggers" which will allow the Debian package to reconfigure itself as system LLVM versions are installed, upgraded, uninstalled, etc. This means that Debian (and its derivatives) users will be able to once again rely on the system-managed copy of irony-mode, so they won't have to worry about maintaining a user-specific copy. Eventually the hope is that some advanced CI on more rare architectures can be deployed to check the status of multiple LLVM versions.

I confess to some burnout on this project, hence the slow progress (ie: rubber duck a problem -> needs research -> go researching -> get tired or run out of time -> months go by). Right now, this is the problem I see:

  1. Install LLVM/Clang 18, -dev packages, etc, and build irony-server
    |
    |--> irony-server links with libLLVM-18.so.1
  2. Leave LLVM/Clang 18 alone, and additionally install LLVM/Clang 17, -dev packages, etc, and build irony-server
    |
    |--> irony-server links with libLLVM-17.so.1 !
  3. Leave LLVM/Clay 18 and 17 alone, and additionally install LLVM/Clang 16, -dev packages, etc, and build irony-server
    |
    |--> irony-server links with libLLVM-16.so.1 !

I wasn't able to identify an obvious cause, and at this point it's better to be humble and publicly ask for a hint then to let this slide for another few months/years.

Does this look like something on the irony-mode side to you (perhaps something in CMakelists.txt?), or in the Debian side of things?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions