Qt
अपने Qt प्रोजेक्ट के लिए CMakeLists.txt
खोज…
Qt 5 के लिए CMakeLists.txt
Qt5 का उपयोग करने वाली एक न्यूनतम CMake परियोजना फ़ाइल हो सकती है:
cmake_minimum_required(VERSION 2.8.11)
project(myproject)
find_package(Qt5 5.7.0 REQUIRED COMPONENTS
Core
)
set(CMAKE_AUTOMOC ON)
add_executable(${PROJECT_NAME}
main.cpp
)
target_link_libraries(${PROJECT_NAME}
Qt5::Core
)
cmake_minimum_required
को CMake के लिए न्यूनतम आवश्यक संस्करण सेट करने के लिए कहा जाता है। इस उदाहरण के काम करने के लिए न्यूनतम आवश्यक संस्करण 2.8.11
- क्यूटी का उपयोग करने के लक्ष्य के लिए 2.8.11
पिछले संस्करणों को अतिरिक्त कोड की आवश्यकता है।
find_package
को किसी दिए गए संस्करण के साथ Qt5 की स्थापना को खोजने के लिए कहा जाता है - उदाहरण में 5.7.0 - और वांछित घटक - कोर मॉड्यूल उदाहरण में। उपलब्ध मॉड्यूल की सूची के लिए, Qt प्रलेखन देखें। Qt5 को इस परियोजना में REQUIRED
के रूप में चिह्नित किया गया REQUIRED
। स्थापना के लिए पथ को Qt5_DIR
चर सेट करके संकेत दिया जा सकता है।
AUTOMOC
एक बूलियन है जो निर्दिष्ट करता है कि CMake Qt moc
प्रीप्रोसेसर को स्वचालित रूप से हैंडल करेगा, अर्थात बिना QT5_WRAP_CPP()
मैक्रो का उपयोग किए बिना।
अन्य "AUTOMOC- जैसे" चर हैं:
AUTOUIC
: एक बूलियन निर्दिष्ट करता है कि CMake क्यूटीuic
कोड जनरेटर को स्वचालित रूप से हैंडल करेगा, अर्थात क्यूटीQT5_WRAP_UI()
मैक्रो का उपयोग किए बिना।AUTORCC
: एक बूलियन निर्दिष्ट करता है कि CMake क्यूटीrcc
कोड जनरेटर को स्वचालित रूप से संभाल लेगा, अर्थात क्यूटीQT5_ADD_RESOURCES()
मैक्रो का उपयोग किए बिना।
add_executable
को दिए गए स्रोत फ़ाइलों से एक निष्पादन योग्य लक्ष्य बनाने के लिए कहा जाता है। फिर लक्ष्य को सूचीबद्ध Qt के मॉड्यूल से कमांड target_link_libraries
साथ जोड़ा जाता target_link_libraries
। CMake 2.8.11 से, target_link_libraries
साथ क्यूटी के आयातित लक्ष्य पैरामीटर लिंकर हैंडल, साथ ही निर्देशिका और संकलक विकल्पों में शामिल हैं।