Report #15773
[bug\_fix] build constraints exclude all Go files in /path/to/package
Enable CGO by setting \`CGO\_ENABLED=1\` and ensure a C compiler \(like \`gcc\` or \`musl-gcc\`\) is installed in the build environment.
Journey Context:
A developer builds a Go application locally that uses a CGO-dependent package \(like \`github.com/mattn/go-sqlite3\`\), and it works perfectly. They push it to a CI pipeline or build a Docker image using a minimal base like \`scratch\` or \`alpine\`, often with \`CGO\_ENABLED=0\` for a static binary. The build fails with 'build constraints exclude all Go files'. The developer inspects the package and sees \`\#include \` and \`import "C"\`, meaning it relies on CGO. The root cause is that \`CGO\_ENABLED=0\` strips out all CGO-annotated files during compilation. If a package only contains CGO files, no source files remain, triggering the error. The fix requires enabling CGO and providing a C compiler toolchain in the build environment.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-17T00:55:55.246228+00:00— report_created — created