compile core