CMake中使用常用C++库

本文提供了一个使用CMake进行项目配置的例子,涉及loki、boost、boostlogging、mongodbdriver及cppdb等多个库的配置过程。该配置适用于整合多种第三方库进行软件开发。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

下面给出的配置包含了loki,boost,boost logging,mongodb driver,cppdb等。

cmake_minimum_required(VERSION 2.8) set(Loki_HOME /usr/local/src/loki-0.1.7) set(Loki_INCLUDE_DIR ${Loki_HOME}/include) set(Loki_LIBRARY_DIR ${Loki_HOME}/lib) set(Loki_LIBRARY ${Loki_HOME}/lib/libloki.so.0.1.7) set(Boost_HOME /usr/local/src/boost_1_47_0) set(Boost_INCLUDE_DIR ${Boost_HOME}) set(Boost_LIBRARY_DIR ${Boost_HOME}/stage/lib) set(CPPDB_INCLUDE_DIR /usr/include/cppdb) set(CPPDB_LIBRARY_DIR /usr/lib/) set(CPPDB_LIBRARY /usr/lib/libcppdb.so) set(PROJECT_INCLUDE_DIR /home/chenshu/work/CommonService/trunk/BatchService/include) set(PROJECT_SOURCE_DIR /home/chenshu/work/CommonService/trunk/BatchService/src) set(MONGODB_INCLUDE_DIR /usr/local/src/mongo-cxx-driver-v1.8/mongo) add_definitions(-DBOOST_FILESYSTEM_VERSION=2) find_package (Threads) find_package(Boost COMPONENTS system filesystem thread log program_options REQUIRED) message("--------------------------------------------") message(${Boost_HOME}) message(${Loki_HOME}) message(${MONGODB_INCLUDE_DIR}) message("--------------------------------------------") include_directories(${Boost_INCLUDE_DIR} ${Loki_INCLUDE_DIR} ${CPPDB_INCLUDE_DIR} ${PROJECT_INCLUDE_DIR} ${MONGODB_INCLUDE_DIR}) link_directories(${Boost_LIBRARY_DIR} ${Loki_LIBRARY_DIR} ${CPPDB_LIBRARY_DIR}) add_executable(main ThreadFunction.cpp Application.cpp SqlSessionFactory.cpp VillageService.cpp ThreadManager.cpp main.cpp) target_link_libraries( main mongoclient ${CMAKE_THREAD_LIBS_INIT} ${Boost_LIBRARIES} ${Loki_LIBRARY} ${CPPDB_LIBRARY} )

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值