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

[ci] skip R-devel clang16 job and use gcc-12 for macOS Python jobs #6608

Merged
merged 3 commits into from
Aug 14, 2024

Conversation

jameslamb
Copy link
Collaborator

@jameslamb jameslamb commented Aug 14, 2024

Contributes to #6607.

I'm proposing skipping this job for now, to unblock CI here. It's failing for non-LightGBM reasons.

If we check again in a week or 2 and it's still broken, we should open an issue in https://github.com/r-hub/containers

@jameslamb
Copy link
Collaborator Author

jameslamb commented Aug 14, 2024

macOS Python jobs with gcc are also failing, like this:

  CMake Error at /usr/local/Cellar/cmake/3.30.2/share/cmake/Modules/CMakeDetermineCCompiler.cmake:49 (message):
    Could not find compiler set in environment variable CC:

    gcc-11.
  Call Stack (most recent call first):
    CMakeLists.txt:36 (project)

(build link)

I suspect that gcc-11 is no longer present in the macOS GitHub Actions runners.

I just pushed e32a986 proposing upgrading to gcc-12 for those jobs. I think this should be fine... gcc isn't used to create any macOS artifacts anyway.

@@ -20,7 +20,7 @@ if [[ $OS_NAME == "macos" ]]; then
# Check https://github.com/actions/runner-images/tree/main/images/macos for available
# versions of Xcode
sudo xcode-select -s /Applications/Xcode_14.3.1.app/Contents/Developer || exit 1
brew install gcc
brew install 'gcc@12'
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think we should continue using the most recent gcc here.

brew install gcc should install gcc@14 right now according to the docs:

gcc
Install command:
brew install gcc
Also known as: gcc@14, gfortran
https://formulae.brew.sh/formula/gcc#default

And seems it does:

Warning: gcc 14.1.0_2 is already installed and up-to-date.
To reinstall 14.1.0_2, run:
  brew reinstall gcc

Can you please revert this particular change and see whether we will get that error again. I guess it ether was temporal or comes from another place in our CI config.

CMake Error at /usr/local/Cellar/cmake/3.30.2/share/cmake/Modules/CMakeDetermineCCompiler.cmake:49 (message):
  Could not find compiler set in environment variable CC:

  gcc-11.
Call Stack (most recent call first):
  CMakeLists.txt:36 (project)


CMake Error: CMAKE_C_COMPILER not set, after EnableLanguage
CMake Error: CMAKE_CXX_COMPILER not set, after EnableLanguage
-- Configuring incomplete, errors occurred!

Comment on lines +17 to +18
export CXX=g++-12
export CC=gcc-12
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
export CXX=g++-12
export CC=gcc-12
export CXX=g++-14
export CC=gcc-14

Ah, seems here this place is!

... or comes from another place in our CI config.

I think this should be OK to run against the most recent gcc version for now.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

When I tried with gcc-14 originally, I saw pydistcheck reporting that there were debug symbols found in lib_lightgbm.dylib.

build link: https://github.com/microsoft/LightGBM/actions/runs/10380575150/job/28740632272

  1. [compiled-objects-have-debug-symbols] Found compiled object containing debug symbols. For details, extract the distribution contents and run 'dsymutil -s "lightgbm/lib/lib_lightgbm.dylib"'.
    errors found while checking: 1

If you want to go all the way to gcc-14 I'm happy to spend some time investigating that. But I chose gcc-12 because it doesn't lead to that error, and to get CI unblocked.

Given that information (which I should have put in a comment, sorry!), do you still want to try gcc-14 here on this PR?

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ah, I see!

Hmm, quite strange situation, TBH...

OK, let's hold over the investigation for some time.

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just changed the title of this PR to reflect this change.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ok thanks! Sorry again for not making that explicit in a comment.

I put up #6609 minimally documenting this so we don't forget about it. I'll add more details to that issue later. And at some point will try to investigate this. I strongly suspect it's a bug in pydistcheck.

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you very much! 🤗

Copy link
Collaborator

@StrikerRUS StrikerRUS left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you for unblocking the CI!

@StrikerRUS StrikerRUS changed the title [ci] skip R-devel clang16 job [ci] skip R-devel clang16 job and use gcc-12 for macOS Python jobs Aug 14, 2024
@StrikerRUS StrikerRUS merged commit 07eb351 into master Aug 14, 2024
44 checks passed
@StrikerRUS StrikerRUS deleted the ci/skip-clang16 branch August 14, 2024 14:51
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants