-
Notifications
You must be signed in to change notification settings - Fork 3.8k
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] switch to manylinux_2_28 for Linux artifacts (fixes #5514, fixes #5589) #5580
Conversation
…ft/LightGBM into ci/build-manylinux-x86_64-wheels
…ft/LightGBM into ci/build-manylinux-x86_64-wheels
…ft/LightGBM into ci/build-manylinux-x86_64-wheels
@guolinke @shiyu1994 @jmoralez @StrikerRUS I have been struggling to fix the issues showing up on the Ubuntu 14.04 image (#5588 (comment)). Instead of spending more time on that, given that we want to move to a new image for building wheels anyway (#5514), can we please just focus on making that switch? What I'm asking for from you:
|
@@ -7,6 +7,7 @@ if [[ $OS_NAME == "macos" ]]; then | |||
sudo xcode-select -s /Applications/Xcode_10.3.app/Contents/Developer || exit -1 | |||
fi | |||
else # gcc | |||
sudo xcode-select -s /Applications/Xcode_14.1.app/Contents/Developer || exit -1 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
this fixes #5589
@guolinke whenever you have time, could you review this PR next? This will unblock LightGBM's CI and allow us to continue making progress on the others things needed to stabilize the CI and improve the process of building Python wheels. |
python-package/README.rst
Outdated
@@ -26,7 +26,7 @@ Compiled library that is included in the wheel file supports both **GPU** and ** | |||
|
|||
For **Windows** users, `VC runtime <https://support.microsoft.com/en-us/help/2977003/the-latest-supported-visual-c-downloads>`_ is needed if **Visual Studio** (2015 or newer) is not installed. | |||
|
|||
For **Linux** users, **glibc** >= 2.14 is required. Also, in some rare cases, when you hit ``OSError: libgomp.so.1: cannot open shared object file: No such file or directory`` error during importing LightGBM, you need to install OpenMP runtime library separately (use your package manager and search for ``lib[g|i]omp`` for doing this). | |||
For **Linux** users, **glibc** >= 2.28 is required. Also, in some rare cases, when you hit ``OSError: libgomp.so.1: cannot open shared object file: No such file or directory`` error during importing LightGBM, you need to install OpenMP runtime library separately (use your package manager and search for ``lib[g|i]omp`` for doing this). |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think this is for version > 3.3.3, should we add a note about the minimal version of glibc for version <= 3.3.3 ?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
A minor comment about the documentation. |
Thanks very much @guolinke ! I'll merge this without waiting on any other reviews so we can keep making progress on stabilizing CI and preparing for the v4.0.0 release. |
This pull request has been automatically locked since there has not been any recent activity since it was closed. To start a new related discussion, open a new issue at https://github.com/microsoft/LightGBM/issues including a reference to this. |
Fixes #5514.
Fixes #5589.
Contributes to #5390.
Contributes to #5391 (via #5396 (comment)).
Proposes switching from an Ubuntu 14.04 image to one based on
pypa/manylinux_2_28
for building artifacts on Linux including:lightgbmlib.jar
(Java interface to LightGBM)lib_lightgbm.so
(C++ shared library)And increases the floors on symbol versions for key linked libraries on Linux.
GLIBC
:<= 2.14
(October 2011) to<= 2.28
(August 2018)GLIBCXX
:<= 3.4.19
to<= 3.4.22
GOMP
:== 1.0
(January 2006) to<= 4.5
(October 2015)Notes for Reviewers
This PR uses images build from guolinke/lightgbm-ci-docker#27. That
lightgbm-ci-docker
PR should be reviewed and merged first.Why all these
if-else
forks in the CI scripts?pypa/manylinux_2_28
is based on Alma Linux, so it useddnf
andyum
as package managers (where Ubuntu usesapt
).