非常详细的cmake用例 |
您所在的位置:网站首页 › cmake编译动态库 › 非常详细的cmake用例 |
开放资源地带
CMake 资料 2 出自 Ogre3D 开放资源地带
跳转到 : 导航 , 搜索
http://bbs.osgchina.org/redirect.php?tid=1229&goto=lastpost
1.5 VersionMe 工程设计
下面我们将着手设计一个稍微复杂一些的工程,名为 VersionMe 。它同样包括一个动态链接 库工程和一个依赖于它的可执行工程,并且计划实现以下一些功能:
可以查询当前操作系统的版本;
可以查询系统中安装的 OpenSceneGraph 库的版本;
可以执行上一次我们创建的 HelloWorld 工程的方法;
为了使我们的工程更具备开源工程的特征,我们模仿 OpenSceneGraph 的文件夹结构,设计 如下:
Image:cmake1.jpg
名为 VersionLib 的链接库工程的头文件和源代码文件将分别保存到 include 和 src 两个目录 下;而名为 test 的可执行工程则单独保存在同名目录下;此外, CMakeModules 目录专职负 责保存相关的 CMake 脚本数据。
这个工程的重点毫无疑问是 VersionLib 链接库,它的工作是提供显示系统版本和 OSG 版本 的函数,以及调用之前的 Hello::sayHello 方法,再次在控制台界面上显示 “Hello CMake!” 这 一行简单而友好的欢迎文字。
VersionLib 库包括一个头文件 Version 和一个源代码文件 Version.cpp ,其代码如下:
/* Version */ #ifndef H_VERSION #define H_VERSION #if defined(_MSC_VER) || defined(__CYGWIN__) || defined(__MINGW32__) # ifdef VERSIONME_LIBRARY # define VERSIONME_EXPORT __declspec(dllexport) # else |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |