मैं संकलन प्राप्त करने के लिए उत्सुक हूं और मैं नवीनतम और सर्वोत्तम साधनों का उपयोग करना चाहूंगा।
वास्तव में, नवीनतम और सबसे अच्छे उपकरण को अपने द्वारा निर्मित करने की आवश्यकता नहीं है। पर रास्पबेरी Pi उपकरण GitHub भंडार आप पाएंगे X86_64
और x686
पार संकलन सॉफ्टवेयर के लिए toolchains।
मैं x86-linux64-cross-arm-linux-hardfp
टूलकिन का उपयोग करने की सलाह देता हूं , क्योंकि यह हार्ड फ्लोटिंग पॉइंट के लिए संकलित होगा, जिसके परिणामस्वरूप बहुत तेज सिस्टम होगा।
$ arm-bcm2708hardfp-linux-gnueabi-gcc --version
arm-bcm2708-linux-gnueabi-gcc-4.5.1 (Broadcom-2708) 4.5.1
Copyright (C) 2010 Free Software Foundation, Inc.
नोट: यदि आप किसी मौजूदा कर्नेल का उपयोग कर रहे हैं तो आपको कर्नेल से मेल खाने वाले टूलकिन का उपयोग करना होगा। हार्डएफपी एप्लिकेशन सॉफ्टएफपी कर्नेल पर काम नहीं करेंगे।
टूलकिन का उपयोग करने के लिए बस भंडार की जाँच करें:
git clone https://github.com/raspberrypi/tools.git --depth 1
--depth
पैरामीटर मतलब यह होगा कि आप भंडार इतिहास के रूप में अच्छी तरह से डाउनलोड किया जा करने के लिए के लिए (हम इसे का उपयोग किया नहीं होते के बाद से) प्रतीक्षा करने के लिए नहीं है।
फिर अपने पैथ चर में बायनेरिज़ जोड़ें:
export PATH=~/tools/arm-bcm2708/x86-linux64-cross-arm-linux-hardfp/bin:$PATH
या पथ को बनाए रखने के लिए:
echo "export PATH=~/tools/arm-bcm2708/x86-linux64-cross-arm-linux-hardfp/bin:$PATH" >> ~/.bashrc
source ~/.bashrc
उपकरण श्रृंखला के साथ संकलन करने के लिए अब आप CROSS_COMPILE
पैरामीटर जोड़ सकते हैं । उदाहरण के लिए, जब चल रहा हो make
:
make CROSS_COMPILE=arm-bcm2708hardfp-linux-gnueabi-
या इसे आसान बनाने के लिए, आप चर को bashrc
फिर से सहेज सकते हैं :
echo "export TARGET=arm-bcm2708hardfp-linux-gnueabi" >> ~/.bashrc
source ~/.bashrc
और अब संकलन करते समय चर का उपयोग करें:
make CROSS_COMPILE=${TARGET}