Hãy nói rằng có ấy sau cấu trúc thư mục:cmake: thêm sự phụ thuộc không trong thư mục con
root
|
+--projects
| |
| +-test
| |
| +-CMakeFiles.txt
|
+--libs
|
+-testlib
|
+-CMakeFiles.txt
thử nghiệm chứa CMakeFiles.txt và testlib cũng chứa CMakeFiles.txt. "test" tạo ra file thực thi và "testlib" tạo ra thư viện tĩnh.
Tôi muốn "thử nghiệm" liên kết với "testlib" mà không sử dụng các liên kết tượng trưng và không di chuyển thư viện "testlib" vào thư mục con trong "kiểm tra".
Bởi vì "testlib" không phải là một thư mục con của "test", tôi không thể làm
add_subdirectory("../../libs/testlib")
Trong CMakeFiles.txt thử nghiệm của - cmake sẽ phàn nàn về "testlib" không nằm trong "test" thư mục con . Ngoài ra, bởi vì hệ thống có nhiều trình biên dịch khác nhau, tôi không thể chỉ đơn giản cài đặt thư viện "testlib" vào một thư mục trung tâm nào đó, vì vậy tôi muốn thử nghiệm biên dịch bản sao của testlib và liên kết với nó (ví dụ như testlib một thư mục con). Tôi cũng muốn "thử nghiệm" dự án để tự động xây dựng lại "testlib" nếu nó đã được thay đổi.
Vì vậy, làm cách nào tôi có thể giải quyết vấn đề này? cmake 2.8.4, winxp sp3.
Cảm ơn - đó là chính xác những gì tôi cần. – SigTerm
@Fraser - Có thể chỉ định thư mục nhị phân trong CMakeFile của testlib_build không? – tower120
@ tower120 - Không, bạn cần phải chỉ định nó trong cuộc gọi 'add_subdirectory'. – Fraser