मैं Qmake और QtCreator का उपयोग कर संकलन पार कर रहा हूँ। किट्स (टूलचेन और क्यूमेक विवरण वहां सेट किए गए हैं) में सेटिंग्स में Sysroot:
नामक एक फ़ील्ड है। (Example here)मेकफ़ाइल में कौन सा आदेश QtCreator स्थानांतरण से "Sysroot" करता है?
के बाद से QtCreator और qmake अंत में, कर रहे हैं, एक Makefile पैदा करने के लिए जिम्मेदार है, मेरे सवाल है, क्या करना है कि विकल्प के लिए Makefile में अनुवाद करता है और यह कैसे toolchain के लिए पारित किया जाता है? सवाल
के लिए
प्रेरणा मैं ~/path-to-sysroot
को Sysroot:
की ओर इशारा करते है। ~/path-to-sysroot
में एक एम्बेडेड लक्ष्य के लिए संकलित नियमित सिसरूट संरचना क्रॉस शामिल है।
~/path-to-sysroot
├── bin
├── include
├── lib
├── sbin
├── share
└── usr
जब मैं कुछ कोड है जो ~/path-to-sysroot/usr/lib
में लाइब्रेरी पर निर्भर करती संकलन को पार करने का प्रयास करें, यह संदेश है कि libs याद कर रहे हैं, लेकिन वहाँ अस्तित्व के साथ विफल रहता है। मैंने जेनरेट किए गए मेकफ़ाइल को पार्स किया है और ~/path-to-sysroot/usr/lib
का कोई निशान नहीं मिला है।
में कंपाइलर झंडे में मैन्युअल रूप से सिसरूट सेट करना होगा, यह संभवतः या तो जीसीसी को '--इसिसोट' विकल्प के रूप में समाप्त होता है या सीधे टूलचेन में संकलित किया जाता है (ताकि इसे निर्दिष्ट करने की आवश्यकता न हो)। आपको वास्तव में क्या त्रुटि संदेश मिलता है? क्या आपने जनरेट किए गए मेकफ़ाइल में संकलन कमांड का पता लगाने का प्रबंधन किया था, और यदि ऐसा है तो यह क्या कहता है? (डीबग करने का एक आसान तरीका शैल से निर्माण के दौरान Ctrl-C दबाएं और देखें कि आपको त्रुटि कहाँ मिलती है, अगर आप * nix पर हैं।) – Ulfalizer
क्या आपने स्वयं Qt बनाया था? क्यूटी को सही तरीके से बनाने के लिए मुझे बहुत सी सिरदर्द हो रही थी ताकि हम एआरएम के लिए क्रॉस-संकलन कर सकें। 'Qmake --query' चलाएं और देखें कि उस कमांड के आउटपुट में sysroot सही है या नहीं। कुछ पथ स्वचालित रूप से qmake के लिए कॉन्फ़िगर किए जाते हैं - मुझे संदेह है कि वे qmake में डिफ़ॉल्ट के रूप में हार्डकोड किए गए हैं, लेकिन उन्हें ओवरराइड किया जा सकता है ('qmake' कमांड के किसी अन्य रूप का उपयोग करके)। – Steve
@Ulfalizer यह कहता है कि लाइब्रेरी की हेडर फ़ाइल गुम है। '-सिसरूट' के रूप में समाप्त होने वाला कुछ ऐसा था जो मेकफ़ाइल में ढूंढने की उम्मीद कर रहा था। देखें कि QtCreator में निर्दिष्ट सेटिंग टूलचेन में कैसे संकलित की जा सकती है। – TheMeaningfulEngineer