Tôi đang cố gắng sử dụng CMake để thiết lập một số phụ thuộc đơn giản giữa một dự án C++ và các thư viện mà nó sử dụng.CMake cách tạo đúng sự phụ thuộc giữa các mục tiêu
Các thiết lập như sau
- Dự án
- phụ thuộc
dự án riêng của mình chứa file nguồn bao gồm tiêu đề từ phụ thuộc và khi thực thi được xây dựng nó cần phải được liên kết với thư viện tĩnh của Dependency.
Cho đến nay tôi có thể làm việc này nhưng tôi phải chỉ định thư mục bao gồm Phụ thuộc trong tệp CMakeLists cho Dự án theo cách thủ công. Tôi muốn điều này được lấy ra tự động và tôi đã khám phá tùy chọn sử dụng lệnh find_package() để làm như vậy với thành công hạn chế và làm cho mọi thứ trở nên phức tạp hơn nhiều.
Tất cả những gì tôi muốn làm là có Phụ thuộc được xây dựng trước Dự án và có liên kết Dự án với thư viện và có thư mục bao gồm, Có cách đơn giản để đạt được điều này không?
My file cmake hiện tại:
DỰ ÁN, CMakeLists.txt:
cmake_minimum_required (VERSION 2.6)
project (Project)
include_directories ("${PROJECT_SOURCE_DIR}/Project")
add_subdirectory (Dependency)
add_executable (Project main.cpp)
target_link_libraries (Project Dependency)
add_dependencies(Project Dependency)
PHỤ THUỘC, CMakeLists.txt
project(Dependency)
add_library(Dependency SomethingToCompile.cpp)
target_link_libraries(Dependency)
Checkout: http://stackoverflow.com/questions/10004134/cmake-add-dependency-not-in-subdirectory –