Ubuntu20.04安装cpp_redis

安装过程遇到一些问题,做一个记录方便自己后续查看

apt-get install libboost-all-dev libhiredis-dev #不清楚是否必要
git clone --recursive https://github.com/luca3m/cpp_redis.git #不加--recursive的话,tacopie目录下没东西
cd cpp_redis
mkdir build
cd build
cmake ..
make 
make install

在cmake … 这个步骤出现问题

CMake Error: install(EXPORT "cpp_redis" ...) includes target "cpp_redis" which requires target "tacopie" that is not in any export set.
-- Generating done
CMake Generate step failed.  Build files cannot be regenerated correctly.

将cpp_redis/CMakeLists.txt 发给ai,根据ai的回答修改如下:

> #找到install 命令的部分,确保 tacopie 也被包含在导出集中:
> install(TARGETS ${PROJECT_NAME} tacopie EXPORT ${EXPORT_TARGET_NAME}
  LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
  ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
  RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
  INCLUDES DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}) 

> install(EXPORT ${EXPORT_TARGET_NAME} DESTINATION
> ${CMAKE_INSTALL_LIBDIR}/cmake/${PROJECT_NAME} FILE ${PROJECT_NAME}-targets.cmake)
if (NOT tacopie_library AND NOT USE_CUSTOM_TCP_CLIENT)
  # requires CMP0077 set to NEW
  set(BUILD_EXAMPLES OFF)
  set(BUILD_TESTS OFF)
  add_subdirectory(tacopie)
  # TODO: add alias library 下面set是额外添加的部分
  set(tacopie_library tacopie)
endif ()

之后make步骤出现问题
fatal error: tacopie/tacopie: No such file or directory

###
# includes
###
target_include_directories(${PROJECT_NAME} PUBLIC
  $<BUILD_INTERFACE:${cpp_redis_includes}>
  $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/tacopie/includes>
  $<INSTALL_INTERFACE:include>)

按上面的找到include部分,添加一条$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/tacopie/includes>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值