七步入门CMake之第二步(添加库)
2013-09-01 08:57
218 查看
这一步主要是学会在项目里添加库
如果有一个文件夹,文件夹名为:MathFunctions,文件夹里包含了两个文件,即MathFunctions.h和mysqrt.cxx,
一个是头文件,一个是sqrt函数的功能实现,要将此文件夹编译层库,需在文件夹下添加一个CMakeLists.txt文件
文件中只需添加一行
add_library(MathFunctions mysqrt.cxx)
即可,这句话的含义也很直观,直接通过字面就可以解读:添加一个名为MathFunctios的库,将mysqrt.cxx添加到库里。
下面设置需要调用这个库的项目的CMakeLists.txt文件
只需要添加如下几句话即可:
include_directories("$(PROJECT_SOURCE_DIR}/MathFunctions")
add_subdirectory(MathFunctions)
add_executable(Tutorial tutorial.cxx)
target_link_libraries(Tutorial MathFunctions)
含义也很直观,指定了库的路径,并指定连接器把MathFunctions录包含进去。
如果要把库设置成可选项,则是在项目的CMakeLists.txt文件里添加如下的语句:
在TutorialConfig.h.in文件里添加如下语句:
即可
在程序里就可用
如果有一个文件夹,文件夹名为:MathFunctions,文件夹里包含了两个文件,即MathFunctions.h和mysqrt.cxx,
一个是头文件,一个是sqrt函数的功能实现,要将此文件夹编译层库,需在文件夹下添加一个CMakeLists.txt文件
文件中只需添加一行
add_library(MathFunctions mysqrt.cxx)
即可,这句话的含义也很直观,直接通过字面就可以解读:添加一个名为MathFunctios的库,将mysqrt.cxx添加到库里。
下面设置需要调用这个库的项目的CMakeLists.txt文件
只需要添加如下几句话即可:
include_directories("$(PROJECT_SOURCE_DIR}/MathFunctions")
add_subdirectory(MathFunctions)
add_executable(Tutorial tutorial.cxx)
target_link_libraries(Tutorial MathFunctions)
含义也很直观,指定了库的路径,并指定连接器把MathFunctions录包含进去。
如果要把库设置成可选项,则是在项目的CMakeLists.txt文件里添加如下的语句:
# should we use our own math functions? option (USE_MYMATH "Use tutorial provided math implementation" ON)
# add the MathFunctions library? # if (USE_MYMATH) include_directories ("${PROJECT_SOURCE_DIR}/MathFunctions") add_subdirectory (MathFunctions) set (EXTRA_LIBS ${EXTRA_LIBS} MathFunctions) endif (USE_MYMATH) # add the executable add_executable (Tutorial tutorial.cxx) target_link_libraries (Tutorial ${EXTRA_LIBS})
在TutorialConfig.h.in文件里添加如下语句:
#cmakedefine USE_MYMATH
即可
在程序里就可用
#ifdef USE_MYMATH #include "MathFunctions.h" #endif 来判断是否使用库了。
相关文章推荐
- CMake入门使用(二)子目录添加及安装至系统目录下
- 七步入门CMake之第四步(自我检查)
- 七步入门CMake之第三步(安装和测试)
- 七步入门CMake之第一步(起步)
- CMake 七步入门
- Asp.Net MVC4.0 官方教程 入门指南之四--添加一个模型
- 【CMake】已有项目添加JNI支持
- Asp.Net MVC4.0 官方教程 入门指南之三--添加一个视图
- [MSSQL]添加数据到数据库,ADO.NET入门之前!
- NDK开发 从入门到放弃(七:Android Studio 2.2 CMAKE 高效NDK开发)
- cmake 添加外部so档
- Asp.Net MVC4.0 官方教程 入门指南之二--添加一个控制器
- MFC入门学习之控件(4)标签控件List Control的添加和使用(上)
- 《partner4java 讲述MyBatis入门》之第二步:MyBatis 常用标签
- CMake添加-D_DEBUG宏
- Asp.Net MVC4.0 官方教程 入门指南之二--添加一个控制器
- CMake入门
- 【Asp.net入门04】第一个ASP.NET 应用程序-如何添加Web窗体到网站中
- CMake使用入门
- VS2010/MFC编程入门之七(对话框:创建对话框类和添加控件变量)