目前GEOS最新的3.7.1版本支持camke进行编译。经过尝试发现通过cmake生成的工程在vs2015下面编译的时候还是存在问题,而且在中文网上也没找到解决方案。
所以还是采用了nmake进行编译。解压出geos-3.7.1文件夹,双击运行其中的autogen.bat。
在目录中找到nmake.opt,这个文件控制着nmake编译的一些参数。记事本打开,找到如下片段:
######################################################################
# Set WIN64=YES if you are building for 64-bit windows (x64).
# Alternatively, pass WIN64=YES as NMAKE command line argument.
######################################################################
!IFNDEF WIN64
WIN64 = NO
!ENDIF
通过注释知道这里控制编译出的是64位版本还是32位版本,我这里用的64版本,所以改为WIN64=YES。
同样,再次找到如下片段:
# Set BUILD_DEBUG to YES if you want to make debug build
# and to prepare not optimized binaries.
!IFNDEF BUILD_DEBUG
BUILD_DEBUG = NO
!ENDIF
同样通过注释知道这里控制编译出的是Release版本还是debug版本,我这里用的debug版本,所以改成BUILD_DEBUG=YES。
修改好配置之后,找到VS2015的本机工具命令提示符,CD到geos-3.7.1文件夹,输入命令:
nmake /f makefile.vc
然后等待编译完成就可以了,最终的输出结果在geos-3.7.1文件夹的src文件夹里面。
如果需要Release版本,那么可以修改对应的配置用同样的方式编译一边就可以了,它们是以_d后缀来区分的。