2010-08-07 15 views
6

, सभी स्रोत कोड "src" नामक फ़ोल्डर में रहते हैं। मेरी परियोजनाओं रूट (ऊपर "src") में एक CMakeLists.txt फ़ाइल है, लेकिन यह केवल प्रोजेक्ट की घोषणा करती है और इसमें "src" उपनिर्देशिका शामिल है। Src के अंतर्गत CMakeLists.txt फ़ाइल "add_binary" सहित सभी काम करता है।सीएमके में द्विआधारी कहां रखा जाए? मेरे प्रोजेक्ट में

अगर मैं अब परियोजना का निर्माण, मेरे बाइनरी में रखा जाता है (कि यह ऐसा करने का एक आम तरीका है, या मैं रख रूट स्तर पर CMakeLists.txt फ़ाइल में सभी खुफिया? चाहिए) src फ़ोल्डर, लेकिन यह बहुत समझ में नहीं आता है, मैं इसे रूट फ़ोल्डर या समर्पित "बिन" फ़ोल्डर में रखना चाहता हूं।

आप यह कैसे करते हैं?

उत्तर

6

यदि आप सबडायरेक्टरी "बिन" कहा जाता है, तो आप शीर्ष CMakeLists.txt फ़ाइल में निम्न पंक्ति का उपयोग कर सकते हैं में अपने सभी निष्पादन योग्य फ़ाइलों डाल करना चाहते हैं:

SET(CMAKE_RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/bin") 

बस /bin हटाने और निष्पादनयोग्य हो जाएगा रूट निर्देशिका में बनाया गया। लाइब्रेरीज़ के लिए एक समान चर मौजूद है: CMAKE_LIBRARY_OUTPUT_DIRECTORY

पीएस। प्रति निर्देशिका तर्क जोड़ना ठीक है। ऐसा लगता है कि चीजें करने और चीजों को अच्छी तरह संगठित करने का सामान्य तरीका है।

संबंधित मुद्दे