-
Notifications
You must be signed in to change notification settings - Fork 217
Fixing cuda_bindings
local build errors manifesting with GCC-13 on Linux (WSL)
#946
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
Conversation
cuda_bindings
local build errors manifesting with GCC-13 on Linux (WSL)
/ok to test 6205570 |
pre-commit.ci autofix |
This comment has been minimized.
This comment has been minimized.
/ok to test c56fab1 |
Successfully created backport PR for |
|
Just sharing an observation:
Interesting. I'm using "GCC-13 on Linux (WSL)", too, but never saw that error. An obvious difference at first glance is that I don't use conda very much when running the cuda_bindings unit tests. |
…Linux (WSL) (#946) (#947) * Fixing cuda_bindings local build manifesting with GCC-13 on Linux (WSL) * [pre-commit.ci] auto code formatting --------- (cherry picked from commit 559f749) Co-authored-by: Rob Parolin <rparolin@users.noreply.github.com> Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
We may want to do an audit of the binaries publish via pypi and conda. I suspect we unintentionally enabled debug symbols somewhere. |
…Linux (WSL) (NVIDIA#946) * Fixing cuda_bindings local build manifesting with GCC-13 on Linux (WSL) * [pre-commit.ci] auto code formatting --------- Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Problem Statement
Running unit tests for
cuda_bindings
viapython -m pytest tests/
was manifesting the following error on WSL.Removing name mangling shows this is the internal assert handler called by the stdlibc++ standard library controlled by the preprocessor macro
_GLIBCXX_ASSERTIONS
.Looking at the resulting gcc compiler command line used to build the c-extensions you can see we are passing mismatched preprocessor toggles; namely,
NDEBUG
and_GLIBCXX_ASSERTIONS
.NDEBUG
disables debug functionality including asserts and then we at the same enable stdlib asserts.This PR ensures we only enable stdlib asserts when compiling in debug.