CentOS6.9/cmake 3.6.1
在我的项目中,我正在尝试创建几个组件,而不是为它们构建运行时,开发和调试包,但是我无法为每个组件生成超过一个rpm.我创建了一个小项目来显示问题:
./include/Box.hpp
namespace room {
class Box {
public:
Box(int volume);
int get_volume() const;
private:
int m_volume;
};
}
Run Code Online (Sandbox Code Playgroud)
./source/Box.cpp
#include "Box.hpp"
namespace room {
Box::Box(int volume)
: m_volume(volume)
{
}
int Box::get_volume() const
{
return this->m_volume;
}
}
Run Code Online (Sandbox Code Playgroud)
./source/app.cpp
#include "Box.hpp"
int main() {
room::Box box(5);
return box.get_volume();
}
Run Code Online (Sandbox Code Playgroud)
./CMakeLists.txt
cmake_minimum_required(VERSION 3.6)
project (home)
set(CMAKE_INSTALL_PREFIX "/usr/local")
set(CMAKE_BUILD_TYPE "RelWithDebInfo")
include_directories("include")
file(GLOB SRC_FILES "source/*.cpp")
file(GLOB HDR_FILES "include/*.hpp")
add_executable(${PROJECT_NAME} ${SRC_FILES})
install(FILES ${HDR_FILES} DESTINATION "include" COMPONENT devel)
install(TARGETS ${PROJECT_NAME} RUNTIME DESTINATION …Run Code Online (Sandbox Code Playgroud)