के साथ निर्माण के बाद libs को कॉपी या ले जाएं मेरे प्रोजेक्ट में एक फ़ोल्डर है जिसमें तृतीय पक्ष लाइब्रेरी (google test, zlib, ...) शामिल है। जब पुस्तकालयों को इन सभी पुस्तकालयों का निर्माण किया जाता है, तो मैं पुस्तकालयों को एक सामान्य फ़ोल्डर में रखना चाहता हूं। मैं इसे सेमेक के साथ करने की कोशिश कर रहा हूं लेकिन मुझे समस्याएं आ रही हैं। मैं इस कोड कोशिश कर रहा हूँ:cmake
add_subdirectory(gtest-1.6.0)
add_custom_command(
TARGET gtest_main
POST_BUILD
COMMAND ${CMAKE_COMMAND} -E copy ${SRC_LIB_DIR}/*.a ${DST_LIB_DIR})
मुझे लगता है कि समस्या हो सकती है कि लक्ष्य gtest में मुख्य इस स्तर पर है, लेकिन एक निचले स्तर
काम नहीं करता है। यह कोड बनाना: SET (CMAKE_LIBRARY_OUTPUT_DIRECTORY "$ {PROJECT_BINARY_DIR}/third_party/lib/release") और फिर gtest उपनिर्देशिका जोड़ना, कुछ भी नहीं करता है। पुस्तकालय हमेशा gtest निर्देशिका रूट पर जाते हैं। – Killrazor
चूंकि gtest डिफ़ॉल्ट रूप से 'स्टेटिक' libs बनाता है, इसलिए आप ['CMAKE_ARCHIVE_OUTPUT_DIRECTORY'] (http://www.cmake.org/cmake/help/v2.8.10/cmake.html#prop_tgt:ARCHIVE_OUTPUT_DIRECTORY) को सेट करना चाहते हैं 'CMAKE_LIBRARY_OUTPUT_DIRECTORY' जो 'साझा' libs के लिए है। – Fraser
धन्यवाद फ्रेज़र और पैट्रिक। सीएमकेE_ARCHIVE_OUTPUT_DIRECTORY ने चाल की है। दोनों के लिए धन्यवाद !! – Killrazor