trying to find the difference between link and compile