After compiling and linking your kernel code to build the XCLBIN, you need to package the device binary along with the host applications. This package can be booted and run on the hardware device. The v++ -p step, packages the final product into an sd_card.img file at the end of the v++ compile and link process.