-
Notifications
You must be signed in to change notification settings - Fork 5.9k
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
win32_deps_build: avoid pip #50916
win32_deps_build: avoid pip #50916
Conversation
|
This error showed up while cross compiling using an Ubuntu 23.04 container. The cython3 package is also available for Focal: https://launchpad.net/ubuntu/focal/+package/cython3 More details about the updated pip behaviour: |
31b8150
to
1290a5f
Compare
jenkins test windows |
It's also available for Bionic, but an older version (0.26 vs 0.29): https://packages.ubuntu.com/bionic/cython3. Was that why you went with pip initially? |
On a second thought, we can actually drop the Cython dependency. We were trying to port the python bindings to Windows, however python extensions can't be cross compiled due to ABI incompatibilities. About recent CI failures, I noticed that some tests occasionally time out. I think we're hitting winpthreads mutex issues again:
I've tried switching to mingw/llvm and it seems to fix the issue. libc++ doesn't use winpthreads, unlike libstdc++ with mingw/gcc. LE: apart from the winpthreads issue, I think a regression was introduced last week. Windows clients are no longer able to connect to Ceph services. Looking into it. |
1290a5f
to
88bb5c5
Compare
On top of that
|
Reverting this PR fixes the connection issue: #47457. I'll need to figure out the exact cause. LE: some decoding failures on the osd side:
|
... and it didn't pass the Windows check, of course. I'll push for making it required once this latest set of issues/regressions is resolved. |
That would be extremely helpful, I'll try to address the issues today. |
I've submitted a patch: #51043. |
jenkins test windows |
The build failure #50916 (comment) still persists. |
Fixed it, thanks. g++ was getting installed as a pip dependency and now has to be specified explicitly. It's used when building the boost b2 tool. |
88bb5c5
to
b283764
Compare
We're currently installing cython with pip when using Ubuntu to cross compile Ceph for Windows. This can fail with recent Python versions if attempting to use the global env: error: externally-managed-environment × This environment is externally managed ╰─> To install Python packages system-wide, try apt install python3-xyz, where xyz is the package you are trying to install. Cython isn't really needed by the Windows build so we can go ahead and drop it. We were hoping to use the Python bindings on Windows, however Python extensions can't be cross compiled. We're no longer using pip either, so we're dropping the dependency. g++ was getting installed as a pip dependency, so we'll have to include that instead. Note that g++ is used when building the boost b2 tool. While at it, we'll also ensure that git is installed. Fixes: https://tracker.ceph.com/issues/59354 Signed-off-by: Lucian Petrut <lpetrut@cloudbasesolutions.com>
b283764
to
041618e
Compare
win32_deps_build: avoid pip Reviewed-by: Ilya Dryomov <idryomov@gmail.com>
We're currently installing cython with pip when using Ubuntu to cross compile Ceph for Windows. This can fail with recent Python versions if attempting to use the global env:
Cython isn't really needed by the Windows build so we can go ahead and drop it. We were hoping to use the Python bindings on Windows, however Python extensions can't be cross compiled.
While at it, we'll also ensure that git is installed.
Fixes: https://tracker.ceph.com/issues/59354
Contribution Guidelines
To sign and title your commits, please refer to Submitting Patches to Ceph.
If you are submitting a fix for a stable branch (e.g. "pacific"), please refer to Submitting Patches to Ceph - Backports for the proper workflow.
Checklist
Show available Jenkins commands
jenkins retest this please
jenkins test classic perf
jenkins test crimson perf
jenkins test signed
jenkins test make check
jenkins test make check arm64
jenkins test submodules
jenkins test dashboard
jenkins test dashboard cephadm
jenkins test api
jenkins test docs
jenkins render docs
jenkins test ceph-volume all
jenkins test ceph-volume tox
jenkins test windows