前几天在利用VS2008编译QT4.7.1时被NMAKE : fatal error U1065: invalid option '-'这个错误给拦住啦,后来才发现是环境变量:MAKEFLAGS惹的祸,由于公司用的QNX系统,所以我们的开发工具都是QNX Momentics IDE 4.6,安装这个开发环境时自动设置了这个环境变量:MAKEFLAGS = -If:/QNX641/target/qnx6/usr/include
解决方法,在使用NMAKE前,先执行:set MAKEFLAGS = 将这个变量清空,或者直接先删除这个环境变量,用好后再加上。
其实,MAKEFLAGS这个环境变量是给make传递命令行选项的,例如“-k”、“-s”等,都是通过环境变量“MAKEFLAGS”传递给子make进程。变量“MAKEFLAGS”的值会被主控make自动的设置为包含执行make时的命令行选项的字符串。在主控执行make时使用“-k”和“-s”选项,那么“MAKEFLAGS”的值就为“ks”。子make进程处理时,会把此环境变量的值作为执行的命令行选项,因此子make进程就使用“-k”和“-s”这两个命令行选项。
版权声明:本文为favory原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。