2013-07-12 27 views
6

Tôi đang phát triển cho hệ thống nhúng bằng cách sử dụng tệp chuỗi công cụ tùy chỉnh. CMAKE_SYSTEM_NAME được đặt thành "Chung", vì vậy không thể sử dụng các biến WIN32, UNIX, v.v. để kiểm tra hệ điều hành mà dự án được cấu hình. Nhưng tôi cần phải cấu hình dự án khác nhau trên hệ điều hành khác nhau.Làm thế nào để xác định hệ điều hành máy chủ khi biên dịch chéo với CMake?

Làm cách nào để xác định hệ điều hành trong đó cmake được thực thi?

Trả lời

3

Kiểm tra variables that describe the system.

Quan tâm đặc biệt là biến số CMAKE_HOST_SYSTEM và họ hàng của nó. Thật không may, hành vi chính xác của chúng phụ thuộc phần lớn vào nền tảng và chuỗi công cụ đã sử dụng. Nếu bạn không nhận được các giá trị hợp lý cho môi trường của mình, hãy xem xét viết thư tới số CMake mailing list để yêu cầu hỗ trợ tốt hơn cho nền tảng của bạn.

+1

Tất nhiên tôi không thể sử dụng CMAKE_SYSTEM, CMAKE_SYSTEM_NAME, v.v. Tôi đặt chúng theo cách thủ công để chuỗi công cụ hoạt động – DikobrAz

+1

Còn về ['CMAKE_HOST_SYSTEM'] (http://www.cmake.org/cmake/help/v2 .8.11/cmake.html # biến: CMAKE_HOST_SYSTEM)? – ComicSansMS

+0

Tuyệt vời! Cảm ơn bạn. CMAKE_HOST_WIN32 chỉ là biến tôi đang tìm kiếm. – DikobrAz

Các vấn đề liên quan