पेड़ से कर्नेल चालक का निर्माण करते समय, मैं इसे ड्राइवर निर्देशिका में चलाता हूं, जहां KERNELDIR
या तो कर्नेल स्रोत, या हेडर के लिए पथ है।सही रूप से लिनक्स हेडर निर्यात करें, मॉड्यूल
make headers_install ARCH=i386 INSTALL_HDR_PATH=$(HEADERSDIR)
मैं निर्यात अनुपयुक्त (एक पूर्ण गिरी स्रोत पेड़ के बिना) के खिलाफ मॉड्यूल का निर्माण करने के कई फ़ाइलों और फ़ोल्डरों को खोजने के लापता होने के लिए, की तरह लग:
make -C $(KERNELDIR) M=$(PWD) modules
जब हेडर निर्माण करने के लिए अपने आप का उपयोग कर की कोशिश कर रहा एक Makefile, लिपियों, include/generated/autoconf.h
या include/config/auto.conf
आदि
डेबियन, rules.real में वर्णित के रूप हालांकि यह अधिक करता Documentation/make/headers_install.txt
में वर्णन किया गया की तुलना में, जो देखने के लिए एक प्रयोग करने योग्य तरीके से काम करता है, एमएस "मानक" तरीका नहीं है।
संक्षेप में: मैं लिनक्स हेडर को सही तरीके से निर्यात कैसे करूं, इसलिए मैं इसके खिलाफ बाहरी मॉड्यूल बना सकता हूं?
मुझे अपने आप को 'autoconf.h' से परेशानी हुई है। अगर मुझे सही याद है, तो मैंने इसे सिर्फ उस फ़ोल्डर से कॉपी किया जहां मैंने अपना कर्नेल बनाया था – Shahbaz