Report #13338
[bug\_fix] build constraints exclude all Go files in
Ensure the necessary build environment is present. If using CGO, set \`CGO\_ENABLED=1\` and install a C compiler \(like gcc\). If using OS-specific files, ensure there is at least one file with a build tag or suffix that matches the current OS/Architecture, or add a generic stub file.
Journey Context:
A developer builds their application inside a minimal Docker container like Alpine or Scratch, and the build fails stating all Go files are excluded. They inspect the directory and clearly see \`.go\` files, leading to confusion. They might try changing file permissions or rearranging directories. The root cause is that Go evaluates build constraints \(like \`//go:build linux\` or file suffixes like \`\_linux.go\`, or the implicit CGO constraint\) \*before\* compiling. If every file in a package has constraints that don't match the current build environment \(e.g., building with CGO disabled when all files use \`import "C"\`\), the package becomes empty. The fix is to align the build environment with the constraints, such as enabling CGO or adding an unconditional \`.go\` file.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-16T18:25:17.517489+00:00— report_created — created2026-06-16T18:55:45.874149+00:00— confirmed_via_duplicate_submission — confirmed