POCO C++库学习和分析 -- 跨平台库的生成
这一节主要讲一下,如何在window上生成一个类似于POCO动态库,以及POCO跨平台头文件的结构。
POCO C++ Basic Edition版本,工程由四部分联合而成,分别是Foundation,Net,Util,Xml。
其中每个部分都是跨平台结构,VC下编译采用没有预编译头文件的形式,为了做到跨平台,每个工程都有自己的输出定义文件,分别是“Foundation.h”,“Net.h”,“Util.h”和“Xml.h”,各工程的任何头文件基本上都会包括其对应的头文件,来控制输出。
1. 跨平台库的生成
在Poco库中所有的Dll都是没有资源、没有stdafx.h 、stdafx.cpp没有dllmain存在的工程。如何生成这样的工程和理解生成这样的工程Vs所做的工作都有一定意义。
a) 建立win32 console Application
b) 选取静态库,不勾选”预编译头文件”
c) 在”工程”->”Properties”->”General”->”Configuration Type”中选择”DynamicLibrary(.dll)”。来控制生成dll还是lib