add '-Wall -Werror' compile options, add remove compile warnings