packages: update CGO_LDFLAGS for NVIDIA Go packages #3680
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description of changes:
The way that Go 1.21 builds dynamicaly linked binaries changed from 1.20 and before. This doesn't export all the symbols and can result in a panic when dynamically loaded. Adding in -export-dynamic to the CGO_FLAGS tells the compiler to export all the symbols which provides the needed lookups for these binaries.
Testing done:
I used the SDK and toolchain versions 0.36.0 which has the Go 1.21.5 SDK. These result in images that boot properly.
Before the change it fails to boot:
After the change boot succeeds and the gpu smoke tests pass:
Test results for an
aws-ecs-2-nvidia
build I did with these changes:Terms of contribution:
By submitting this pull request, I agree that this contribution is dual-licensed under the terms of both the Apache License, version 2.0, and the MIT license.