这几天用了几个开源第三方库,都是用Make来构建项目的。Makefile这玩意,本来是出自Linux系环境的,然后我一般都是开发Win32程序,所以要在Windows系统使用Linux系的东西确实一开始不太适应。
首先,MinGW环境是少不了的,这个是在windows系统下模拟Linux的开发工具链。但是一开始的误区是,我以为真的像文档说的那样make一下就完事了,事实上Makefile需要我们根据自己电脑环境去设置一些东西才可以允许,基本上都是要修改才能运行的。并且要看Makefile本身或文档了解参数和配置。
其次,Makefile直接用gcc这样的编译器来编译,导致不熟悉gcc编译器的我们来说有点棘手,其次gcc编译器也不完全适应Windows(比如gcc编译器没办法链接.lib文件,也没有VC自带的运行库)。
所以,经过了几个坑之后,如果项目本身太大以致于无法手动构建VS项目并且Makefile和文档明确指出了支持Windows系统下的build,这个时候才建议在Windows下进行make(如Qt库通过参数可以生成windows下的lib和dll,Selene库通过Make生成VS项目)。另外一些需要MinGW环境才能make的东西并且项目不是很难构建VS项目,最好不要make,而是自己手动创建一个VS项目,把需要的源文件和库包含进来就行了。(如Lua和SWIG,自己直接构建一个VS项目要省事的多,若通过make反而很不容易,必须手动修改一大堆东西而且还可能最后发现不适用于Windows系统)。
Linux系Make在Windows下的使用心得
最新推荐文章于 2024-07-31 22:12:09 发布