Stack Exchange network consists of 183 Q&A communities including Stack Overflow, the largest, most trusted online community for developers to learn, share their knowledge, and build their careers.
The file was not corrupt, actually the problem was that I was using .ova appliance file which was supposed to be used with vmware workstation, there are different .ova files for virtualbox and vmware.
this was the problem I had after installing iso on virtalbox, could not figure out how to fix, eventually I had to install vmware workstation and imported the appliance there, there it is working fine.
When we include the header file of a library in our code, it pastes the prototypes of all the functions implemented in that library, but note that it just pastes the prototypes of the functions, their implementation code is not included/pasted, this part is done by the linker thing. I am not sure though, let others give their input.