跨平台C++开源码的两种经常使用编译方式
作者:朱金灿
来源:http://blog.csdn.net/clever101
跨平台C++开源代码为适应各种编译器的编译,採用了两种方式方面来适配。一种是makefile方式。以著名的空间数据格式解析库gdal为例,它就是提供了makefile来供各种编译器来编译。
gdal主要提供了微软的VC编译器和GNU GCC编译器两种格式的makefile,在gdal的源代码根文件夹能够找到makefile.vc和GNUmakefile两个makefile文件。当中makefile.vc为vc编译器的makefile,GNUmakefile为GNU GCC编译器的makefile。
还有一种方式是使用CMake软件。CMake软件能够看作是依据源代码来构建各个IDE厂商的project格式。
CMake是一个开源软件,CMake支持的部分IDE(编译器)例如以下图:
从上图能够看出CMake能够支持非常多IDE。
CMake软件的输出文件夹习惯是开源代码根文件夹下的cmake文件夹。
跨平台C++开源代码一般至少支持makefile或CMake方式进行编译,有些两种都支持。
怎样推断一个开源代码支持哪些方式?一个粗浅的办法是查看源代码根文件夹下是否有以makefile命名的文件,假设有,非常可能是支持makefile编译的,假设源代码根文件夹下有CMakeLists.txt,应该是支持CMake方式进行编译。