compilation using cmake