At 34 weeks I wouldn't be concerned.. you still have 6 weeks to go that's enough time for your baby to gain a few pounds
I gained 40 lbs with my first (age 21)and she was 9 lbs 8 oz and 2wks overdue. I only gained 16 lbs with my second (age25)and he was still 8 lbs 2 oz delivered at 38wks. This is my 3rd pregnancy (age32)and I'm only 6wks so we shall see.
4 lbs. Is normal for 34 weeks. That's average so your baby will most likely come out 7 something.
I put on around 30 lbs with my first (115-145) and she was 8 lbs 4 oz. I don't know why your baby would be so small, I've heard that ultrasounds aren't too reliable for guessing baby's weight but the techs can give it a try. I'd say try not to fret, considering how much weight you've gained baby is probably okay.