make some compilation progress
merged changes