! fix compile&link logic