Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[TASK] Choose C++ compilers #63

Open
RobBryce opened this issue Mar 23, 2022 · 7 comments
Open

[TASK] Choose C++ compilers #63

RobBryce opened this issue Mar 23, 2022 · 7 comments
Assignees
Labels
GOA Invoice This item will be paid by GOA invoice Task Simple Task

Comments

@RobBryce
Copy link
Collaborator

Currently, the Windows build uses Microsoft Visual Studio C++ compiler (2019) and Intel's latest compiler (2022) based on Clang.
Currently, the Linux build uses GCC.

Microsoft and GCC compilers are available on Github for automated builds.
Intel compilers are not available, but there may be a way to use them - if the Intel license lets us.

Clang is available (without Intel's optimizations - in their product now called OneAPI).

The choice of compilation tools impacts:

  • the source tree due to slight variations in compiler parsers, compilers, linkers, and library implementations
  • final project execution performance
  • project runtime (library) dependencies (cstdlib, Intel redistributables, etc.)

Some discussion on preferred compilers may be appropriate before the project is released for general consumption.

@RobBryce RobBryce added the Task Simple Task label Mar 23, 2022
@spydmobile
Copy link
Collaborator

@RobBryce What more discussion and with whom do you think this needs before we can deal with it? I thought you would simply have to go with clang to be compatible?

@spydmobile spydmobile added the Triage Issue needs triage label Apr 27, 2022
@RobBryce
Copy link
Collaborator Author

We currently use GCC for Linux targets.

@BadgerOnABike
Copy link
Collaborator

Considering all things seem to be moving to OneAPI and we are having to provide compilers is a move to OneAPI the smart one? (Thinking about this from a user perspective)

@spydmobile
Copy link
Collaborator

@RobBryce to simplify these tasks, can you please lay out current compilers against the options you want us to choose from and why they might be a good option.

@spydmobile spydmobile changed the title [TASK] Choice of C++ compilers [TASK] Choose C++ compilers Mar 8, 2023
@BadgerOnABike
Copy link
Collaborator

Per our conversations recently. Sounds like Vs '22 is the move in order to support multiple repositories. This may make a number of our decisions for us. Specifically WISE-Developers/Prometheus-EOL-Issues#19

@RobBryce
Copy link
Collaborator Author

RobBryce commented Mar 8, 2023

Visual Studio 2019 was used on the latest Prometheus builds. I want to roll that ahead to Visual Studio 2022 for a variety of reasons.
We used an old install of the Intel compiler that likely isn't even available for download now. I want to roll that ahead to Intel 2023.

@spydmobile spydmobile added the GOA Invoice This item will be paid by GOA invoice label Mar 9, 2023
@spydmobile spydmobile removed the Triage Issue needs triage label Mar 10, 2023
@RobBryce
Copy link
Collaborator Author

Migrating to VS2022 and Intel 2023 per #133

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
GOA Invoice This item will be paid by GOA invoice Task Simple Task
Projects
None yet
Development

No branches or pull requests

3 participants