添加RxCpp库到cmake项目
add RxCpp library to cmake project
我想在Linux (gcc)上使用RxCpp,但我很难将RxCpp库适当地添加到我的cmake项目中。我按照克隆和构建指令运行:
git clone --recursive https://github.com/Reactive-Extensions/RxCpp.git
cd RxCpp
mkdir projects/build
cd projects/build
cmake -G"Unix Makefiles" -DCMAKE_C_COMPILER=gcc -DCMAKE_CXX_COMPILER=g++ -DCMAKE_BUILD_TYPE=RelWithDebInfo -B. ../CMake
make
我试图运行make install
,但得到:
make: *** No rule to make target 'install'. Stop.
然后,我注意到文件libRxCpp.so
在我的构建目录和复制它:
cp libRxCpp.so /sw/RxCpp/2.3.0/
我在Clion中创建了一个新项目,它使用cmake并像这样修改CMakeLists.txt
:
cmake_minimum_required(VERSION 3.6)
project(RxCpp_Example)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
# my try to add library RxCpp
set(RxCpp_Lib_PATH /sw/RxCpp/2.3.0/)
find_library(RxCpp_Lib NAMES libRxCpp.so PATHS ${RxCpp_Lib_PATH})
target_link_libraries(RxCpp_Example ${RxCpp_Lib})
set(SOURCE_FILES main.cpp)
add_executable(RxCpp_Example ${SOURCE_FILES})
然而,当更新cmake项目(或在终端运行cmake)时,我得到一个错误:
CMake Error at CMakeLists.txt:9 (target_link_libraries):
Cannot specify link libraries for target "RxCpp_Example" which is not built
by this project.
我做错了什么?我如何将RxCpp库添加到我的cmake项目?
在使用add_executable
创建目标之前调用了target_link_libraries
。像这样修改你的cmake文件:
find_library(RxCpp_Lib NAMES libRxCpp.so PATHS ${RxCpp_Lib_PATH})
set(SOURCE_FILES main.cpp)
add_executable(RxCpp_Example ${SOURCE_FILES})
target_link_libraries(RxCpp_Example ${RxCpp_Lib})
相关文章:
- 使用C++库在Android项目中修改gradle中的cmake参数,用于插入指令的测试
- CMake-按正确顺序将项目与C运行时对象文件链接
- CMake项目Boost库错误:Boost/config/compiler/gcc.hpp:165:10:致命错误:cs
- cmake在我的项目中所需的所有静态库都不成功
- 使外部项目可用于find_package CMake
- 在 Mac 上使用 CMAKE 将 FFTW 和 FFTWPP 链接到项目中时未定义的符号
- 将 OpenCV 与 CMAKE 中的项目一起构建为第三方库的正确方法
- CMake WxWidgets项目成功地在Linux上构建,但没有在Windows上构建
- Visual Studio 中的 CMake 项目:如何添加其他包含和库目录?
- 尝试将 boost::stacktrace 添加到 CMake 项目时出现构建错误
- 当我尝试通过 mingw 使用 CMake 和 SFML 库编译项目时出错
- 如何将我的 CMake 项目配置为运行所有单元测试?
- CMake 生成的 MSVC 项目找不到符号,即使为其相关 dll 正确生成了 lib 文件也是如此
- 智能感知不适用于Visual Studio 2017中的cmake项目
- 如何在我的项目中从 CMAKE 中的同一项目获取多个库
- 在现有的C++可执行项目CMAKE中构建Apache Arrow
- 编译/添加 cuda 代码到现有项目 (CMake)
- 将 GLEW 添加到项目 (CMake)
- SDL项目CMake构建失败
- 如何在目标项目 (cmake) 中添加不用于创建目标的文件