首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >KDevelop4 :使用cmake设置项目

KDevelop4 :使用cmake设置项目
EN

Stack Overflow用户
提问于 2011-04-07 12:51:49
回答 1查看 2.3K关注 0票数 1

我正在使用Kdevelop4,并且希望使用默认的CMake c++项目。

我的计划是将我的应用程序划分为程序、几个共享库,我希望有一个单独的项目构建单元测试(我计划使用google测试)。

我有几个问题:

  1. 如何修改默认的cmake文件以获得共享库,而不是可执行文件?
  2. 如何将google测试框架与cmake集成?

由CMakeLists.txt生成的默认KDevelop4如下所示:

代码语言:javascript
复制
project(kdevbook)

add_executable(kdevbook main.cpp)
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-04-07 13:01:20

1)共享图书馆:

代码语言:javascript
复制
add_library(kdevbooklib SHARED source.cpp)

更多信息。

2) 链接。

更新:

根CMakeList.txt:

代码语言:javascript
复制
CMAKE_MINIMUM_REQUIRED(VERSION 2.6.0)

PROJECT(MyGreatProject)

SET(LIBRARY_OUTPUT_PATH ${MyGreatProject_BINARY_DIR}/bin CACHE PATH
  "Single output directory for building all libraries.")
SET(EXECUTABLE_OUTPUT_PATH ${MyGreatProject_BINARY_DIR}/bin CACHE PATH
  "Single output directory for building all executables.")
MARK_AS_ADVANCED(LIBRARY_OUTPUT_PATH EXECUTABLE_OUTPUT_PATH)

ADD_SUBDIRECTORY(MyGreatProjectLib)
ADD_SUBDIRECTORY(MyGreatProjectBin)

Libs MyGreatProjectLib/CMakeLists.txt:

代码语言:javascript
复制
PROJECT(MyGreatProjectLib)

INCLUDE_DIRECTORIES(
  ${CMAKE_CURRENT_BINARY_DIR}
  ${CMAKE_CURRENT_SOURCE_DIR})

add_library(MyGreatProjectLib SHARED source.cpp)

Bin MyGreatProjectBin/CMakeLists.txt

代码语言:javascript
复制
PROJECT(MyGreatProjectBin)

INCLUDE_DIRECTORIES(
  ${CMAKE_CURRENT_BINARY_DIR}
  ${CMAKE_CURRENT_SOURCE_DIR}
  ${MyGreatProjectLib_SOURCE_DIR})

add_executable(MyGreatProjectBin main.cpp)

target_link_libraries(MyGreatProjectBin MyGreatProjectLib)
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5581337

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档