Burn bootloader to atmega328p-pu

Have you disabled autoreset on the programmer Arduino? A 10uf cap from reset to ground after uploading the Arduino as ISP sketch? Edit: reset disable should not be required for bootloading.

What is the source of the 328 chip? Did it come from an Uno? If so, the chip is set for a 16MHz crystal and so will need either a crystal or external clock to enable programming. Nick Gammon's Uno on a breadboard tutorial shows how to program using the external clock.