Hall cracked a solo homer to left-center and Weeks added a two-run shot to left as the Brewers beat the Pirates for the 14th straight time overall and 16th in Milwaukee.
Ryan Braun went 2-for-4 with two RBI and a one run.
Eric Hinske and Jason Jaramillo drove in two runs apiece for the Pittsburgh.
Jesse Chavez (0-1) took the loss. Paul Maholm started, coughing up five runs on seven hits with five walks over 5 1/3 frames.