2012-02-21 11 views
20

मेरी क्यूटी परियोजना में मैं निर्माण प्रक्रिया के हिस्से के रूप में पुस्तकालयों की प्रतिलिपि बनाने की कोशिश कर रहा हूं। लक्ष्य सभी आवश्यक गतिशील पुस्तकालयों के निर्माण के बाद तैयार किए गए वितरण के लिए है।मैं QMake इंस्टाल वैरिएबल इनपुट कैसे निर्दिष्ट करूं?

यह स्थापित करता है चर के साथ acheivable लगता है, लेकिन मैं प्रलेखन थोड़ा पतली लगता है: qmake Variable Reference: INSTALLS

उदाहरण में दिए गए:

  • target पहले से परिभाषित है, या target.path = लिख कर परिभाषित किया गया है?
  • संभावित सदस्यों के लिए प्रलेखन कहां है? .path और ...?
+0

उदाहरण में 'लक्ष्य' परिभाषित किया गया है। मेकफ़ाइल में आउटपुट 'install_target' की परिभाषा है। रेफरेंसिंग चर से संबंधित कुछ त्रुटियां थीं। –

उत्तर

22

हाँ, दस्तावेज़ों को यहां वांछित होना बहुत अधिक है।

target पहले से ही परिभाषित किया गया है, लेकिन यह एक विशेष मामला है। आप अपने स्वयं के अतिरिक्त तैनाती सेट को परिभाषित कर सकते हैं। यहाँ कैसे हम छवि प्रारूप प्लगइन्स निर्दिष्ट है:

imageformats.path = /opt/some/path/bin/imageformats 
imageformats.files += $$[QT_INSTALL_DATA]/plugins/imageformats/*.so 
INSTALLS += imageformats 

यहाँ तीन आदेशों के बारे में कम से कम प्रलेखन है: http://doc.qt.io/qt-4.8/qmake-environment-reference.html#installs

yourset.path = /path/in/which/to/install/files 
yourset.files = /files/to/install 
yourset.extra = custom commands to run, eg. `touch somefile.txt` 
INSTALLS += yourset 
9

target जो कुछ भी स्ट्रिंग का उपयोग करना चाहते है। यह आपका स्वयं का पहचानकर्ता है।

target.files परिभाषित करता है कि आप क्या इंस्टॉल करना चाहते हैं।

target.path स्थान (निर्देशिका) आप में।

target.files डाल करने के लिए उदाहरण के लिए, मान लीजिए कि मैं एक फ़ाइल "config.xml" है कि मैं निर्देशिका "xyzzy" करने के लिए प्रतिलिपि बनाना चाहते हैं कहा जाता है चलो चाहते हैं। मैं इसे निर्दिष्ट करने के लिए अपने qmake .pro फ़ाइल में निम्न का उपयोग करता हूं।

my_file.files = config.xml 
my_file.path = xyzzy 

INSTALLS += my_file 

Btw, वास्तव में फ़ाइल प्रतिलिपि बनाने के लिए, आप make install पर अमल करना होगा।

आपको समझने में उत्तर भी उपयोगी हो सकता है: Copy a file to build directory

+0

लिंक के लिए धन्यवाद। '% {BuildDir}' वैध वाक्यविन्यास या बस उदाहरण के लिए है। मैंने कोशिश की, लेकिन क्यूटी निर्माता में अभिव्यक्ति का कभी मूल्यांकन नहीं किया गया :( –

+0

@eriktheblond लिंक में उदाहरण मानता है कि 'buildDir' पहले से ही qmake .pro फ़ाइल में परिभाषित किया गया है (यानी' buildDir = a/b/c') – jwernerny

+0

@jwernerny लक्ष्य को छोड़कर अच्छा जवाब वास्तव में एक "अंतर्निर्मित" और थोड़ा विशेष है, जो भी आप उपयोग नहीं करना चाहते हैं। यह TARGET से संबंधित है। देखें - https://qt-project.org/doc/qt- 4.8/qmake-environment-context.html # इंस्टॉल करता है। – spinkus

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