-
-
Notifications
You must be signed in to change notification settings - Fork 228
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
clang executable detection #27
Comments
You had tested not the latest version. The #1 should have solved exactly the issue you are describing. |
@Kojoley , if that's the case, then excellent news! Next question.. If you build a boost library (with boost and relevant dependencies) on the 'develop' branch instead of the 'master' branch, it usually pulls in the latest 'develop' branch code from dependent libraries. However, the most recent copy of b2 was a month ago:
Can the new version of b2 be commited into boost 'develop', so that it will apply to CI testing? |
I do not understand why development had moved here and what is the synchronization policy. These questions must be addressed to @grafikrobot. |
@Kojoley thank you for the feature enhancement! |
See.. #29 |
Hi, The new version of clang detection was merged into boostorg/build a few days ago. Running tests, and something unusual seems to be happening.
To debug, I added a new section "DEBUG 2", as follows:
It shows that clang++-8 exists and is in the PATH. example jobs: https://github.com/samd2/json/actions/runs/919878566 Did you already test those combinations? (such as clang 5 ?) |
That's strange, could you please add --debug-configuration to b2 invocation and post the log? |
Here is --debug-configuration
|
I get it, Clang 8 and below reports its version as 4.2.1 |
Well, you may be right. Certainly, something is reporting 4.2.1.
|
Yes, clang 8 reports the GCC emulation version on
|
Environment and version details
Describe your use case
Hi,
Here's an issue that I've just encounter.
Imagine you run a build with "toolset=clang-10"
For example,
What is the expected result if clang-10 doesn't exist on that machine? You would expect a warning message would appear. Even more likely, that the build would stop and tell you the compiler is not available.
However, what b2 does is proceed with whatever clang++ that it finds on the system.
By extension, if multiple clang's are installed, which one will it use? Not what is specified by toolset=. Rather, the first clang++ it finds on the PATH.
jeking3 already discovered this, mentioned here: boostorg/build#306 .
Describe the solution you'd like
gcc does not have the problem.
"it would seem that the version selection code currently inside the init rule inside gcc.jam should be considered generic to all toolset= processing."
Make the gcc solution more general, and include clang.
The text was updated successfully, but these errors were encountered: