You ask the go tool to compile lib/file_1.go, you never mention lib/file_2.go, and how should it know that it should compile it?
From go help build:
Build compiles the packages named by the import paths,
along with their dependencies, but it does not install the results.
If the arguments are a list of .go files, build treats them as a list
of source files specifying a single package.
source
share