"स्वच्छ" के बिना लिनक्स कर्नेल का पुनः निर्माण


11

मैं 4.11 के आधार पर एक कस्टम कर्नेल का निर्माण कर रहा हूं (यदि यह मायने रखता है तो मिंटएक्स 64 के लिए)। मैंने पहले ही संकलित कर लिया है और यह साबित करने के लिए इसे स्थापित किया है कि यह काम करता है। अब मैंने कुछ फाइलों में (ड्राइवर और नेट सबसिस्टम में) कुछ छोटे बदलाव किए हैं, यही कारण है कि मुझे पहली जगह में एक कस्टम कर्नेल संकलित करने की आवश्यकता है!)

अब मैं संशोधित कर्नेल का निर्माण करना चाहता हूं। हालाँकि जब मैं दौड़ता हूँ

fakeroot make -j5 deb-pkg LOCALVERSION=myname KDEB_PKGVERSION=1 

निर्माण प्रणाली सामान के पूरे भार को "साफ" करके शुरू करती है, इसलिए मैंने इसे जल्दी से रोक दिया। दुर्भाग्य से मैं जिस कंप्यूटर का उपयोग कर रहा हूं वह एक अच्छे सीपीयू से धन्य नहीं है और इसे स्क्रैच से बनाने में कई घंटे लगते हैं। इसलिए यदि संभव हो तो मैं इसे फिर से करने से बचूंगा!

क्या यह संभव है कि सब कुछ बिना "वृद्धि" के केवल एक वृद्धिशील निर्माण हो जाए या यह कर्नेल बिल्ड सिस्टम की आवश्यकता है?

मुझे जो आउटपुट मिला वह था:

CHK      include/config/kernel.release
make clean
CLEAN .
CLEAN arch/x86/lib
...

@jc__ ऊपर से निर्माण का आउटपुट देखें, मैं तुरंत नहीं ढूँढ सकता कि उस लक्ष्य के लिए
मेकफाइल कहां

जवाबों:


12

make cleanकेवल के लिए है deb-pkgलक्ष्य। पर एक नज़र रखना scripts/package/Makefile:

deb-pkg: FORCE
        $(MAKE) clean
        $(call cmd,src_tar,$(KDEB_SOURCENAME))
        $(MAKE) KBUILD_SRC=
        +$(call cmd,builddeb)

bindeb-pkg: FORCE
        $(MAKE) KBUILD_SRC=
        +$(call cmd,builddeb)

यदि आप bindeb-pkgइसके बजाय निर्माण करते हैं, तो यह एक साफ काम नहीं करेगा। आप शायद वैसे भी स्रोत संकुल की जरूरत नहीं है।

मुझे संदेह है कि यह एक साफ करता है क्योंकि यह स्रोत टारबॉल में कलाकृतियों का निर्माण नहीं करना चाहता है।


2

आप एक अलग टूल के साथ उन डिबेट पैकेज को बनाने की कोशिश कर सकते हैं , make-kpkgजो कि स्थापित है apt-get install kernel-package। फिर उदाहरण के लिए

make-kpkg --rootcmd=fakeroot --initrd --uc --us -j2 kernel_image kernel_headers

यह आदेश make cleanप्रत्येक बार नहीं करना चाहिए ।


1

मैंने डिबेट-pkg कमांड के लिए मेकफाइल में जाने और स्क्रिप्ट से "क्लीन बनाने" को हटा दिया। इससे बिल्ड के साथ कोई बुरा प्रभाव नहीं हुआ और मैं बिना किसी समस्या के अब एक या दो सप्ताह से कस्टम कर्नेल चला रहा हूं। YMMV!

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.