2013-04-18 6 views
6

शायद एक बेवकूफ सवाल है, लेकिन मैं सोच रहा था कि पाइथन के आस-पास संकलक विकल्प कहाँ से प्राप्त करते हैं? यह कुछ लिंक निर्देशिकाओं को गलत करता है और मैं इसे एक बार और सभी के लिए सही करना चाहता हूं।Distutils संकलक विकल्प विन्यास

मुझे पता है कि एक उपसर्ग/lib/pythonver/distutils/distutils.cfg होना चाहिए, लेकिन मुझे कंप्यूटर पर कहीं भी distutils.cfg नहीं मिल रहा है। जाहिर है मुझे स्थानीय setup.cfg या कोई $ HOME/.pydistutils.cfg नहीं मिला है।

मैं Enthought 64-बिट वितरण, संस्करण 7.3 (अजगर 2.7) मैक ओएस एक्स 10.8.3

चीयर्स पर उपयोग कर रहा हूँ, यू

उत्तर

6

मैं वास्तव में उन्हें पर्यावरण के लिए निर्यात करते हैं, बस autotools 'कॉन्फ़िगर के लिए की तरह:

export CC=/usr/local/bin/clang 
export CFLAGS=-I${HOME}/include 
export LDFLAGS=-lboost 

आप भी अलग से लिंकर ओवरराइड करने के लिए की जरूरत है:

export LDSHARED=/usr/local/bin/clang -shared 

और तुम export अपने पर्यावरण के लिए सेटिंग्स ing, पसंद नहीं है, तो एक बार की स्थापना के लिए कुछ इस तरह करते हैं:

CC=/usr/local/bin/clang CFLAGS=-I${HOME}/include python setup.py build 

आप क्या डिफ़ॉल्ट विकल्प थे जब अजगर का निर्माण था पता लगाने के लिए चाहते हैं , python-config --<flag> का उपयोग करें। कुछ झंडे cflags, ldflags, libs या includes हैं।

+0

ठीक है, जो चर सेट करेगा, लेकिन वे अभी सेट नहीं हैं, तो distutils उन्हें कहां से मिलता है? मुझे पाइथन फाइलों में कोई संकेत नहीं मिला है कि distutils इसे कहीं और पढ़ा जाएगा। – Mulle

+0

एरिक का जवाब भी देखें; अगर कोई कॉन्फ़िगरेशन फ़ाइल नहीं है (आप कहते हैं कि यह वहां नहीं है), कंपाइलर झंडे वास्तव में मूल कॉन्फ़िगरेशन/झंडे का पालन करते हैं, और इस प्रकार 'पायथन-कॉन्फ़िगर - कैफ्लैग' आदि के साथ भी देखा जा सकता है – Evert

+0

आह, वहां वे हैं ! चूंकि मैंने पायथन को संकलित नहीं किया है लेकिन ईपीडी वितरण लिया है, इसलिए मुझे मेकफ़ाइल अनुमान नहीं होगा। लेकिन अब मुझे पता है कि कहां देखना है और क्या करना है। चीयर्स! – Mulle

3

संकलक विकल्प सीपीथॉन मेकफ़ाइल से लिया जाता है। IOW वे पाइथन संकलित करने के लिए उपयोग किए जाने वाले समान हैं। आप उनमें से अधिकांश को कमांड लाइन पर ओवरराइड कर सकते हैं जैसे कि एवर ने वर्णित किया है।

वैश्विक distutils.cfg ऐसा कुछ है जो sysadmin डिफ़ॉल्ट विकल्प सेट करने के लिए बना सकता है, न कि पाइथन के साथ स्थापित फ़ाइल।

संबंधित मुद्दे