ROOT उपयोगकर्ता के रूप में मैं क्या करता हूं:
SRPM स्थापित करें क्योंकि आप किसी भी अन्य पैकेज ( rpm --install [source-rpm-filename])
/root/rpmbuild/SPECSनिर्देशिका का परीक्षण करें और अपने पैकेज से मेल खाने वाली चश्मा फ़ाइल ढूंढें
rpmbuild -bb /root/rpmbuild/SPECS/[found-filename]
परिणामी बाइनरी पैकेज तब /root/rpmbuild/RPMS/निर्देशिका में स्थित होते हैं जो मानक rpm --installकमांड के माध्यम से स्थापित होने के लिए तैयार होते हैं ।
नोट: यह सिर्फ मानक बाइनरी पैकेज में क्या है बनाता है। मैं इस विशिष्ट प्रश्न का उत्तर दे रहा हूं, न कि स्रोत में परिवर्तन करने और नए पैकेज तैयार करने के बारे में।
संशोधनों को करने के लिए, आप या तो इनपुट के रूप में पैच प्रदान कर सकते हैं और स्पेस फ़ाइल को बदल सकते हैं .... या आप परिवर्तन के साथ अपने स्वयं के साथ *.tar.bz2स्थित मानक /root/rpmbuild/SOURCESको बदल सकते हैं और फिर ऊपर वर्णित अनुसार निर्माण कर सकते हैं।
खबरदार आप इसे काम करने के लिए स्पेकस पैकेज को बदल सकते हैं (आमतौर पर पैचिंग को बाहर निकालकर, और कुछ फ़ाइलनामों को बदलकर जिन्हें स्पेश फाइल द्वारा प्रोग्राम किया जाता है)।
संपादित करें
ऐसा लगता है कि रूट का निर्माण एक बुरा अभ्यास है ( स्रोत )। यह एक गैर-रूट उपयोगकर्ता के रूप में ठीक काम करता है।
एक पैच जोड़ने के लिए चरण निर्देश द्वारा कदम ( यहाँ से ):
- अपने पैच को कॉपी करें
rpmbuild/SOURCES।
- संपादित करें
rpmbuild/SPECS/package.specऔर लाइन के Patch0: mypatch.patchबाद एक सही जोड़ें Source0: ...।
- बाद
%setup ...लाइन एक जोड़ने %patch0 -p1लाइन
अब यह सामान्य रूप से निर्मित होगा, अर्थात। साथ में:rpmbuild -ba SPECS/package.spec