2012-06-02 15 views
8

मैं लिनक्स चला रहा हूं, और एक पायथन मॉड्यूल डाउनलोड किया है, मुझे किसी भी एक्सेस के बिना इंस्टॉल करना होगा, लेकिन मेरी विशेष/होम/उपयोगकर्ता निर्देशिका (मेरे पास कोई रूट विशेषाधिकार नहीं है और न ही उन्हें आगे बढ़ाने का विकल्प है)।सेटअप.py का उपयोग कर मॉड्यूल बिल्ड/इंस्टॉल के दौरान Python.h खोज पथ में कोई निर्देशिका निर्दिष्ट या जोड़ सकता है?

इस कोर्स के लिए पाइथन स्रोत की आवश्यकता है। मैंने डाउनलोड किया है और कहा उपयोगकर्ता निर्देशिका में चारों ओर बिछा रहा है।

व्यवस्थापक को उचित फ़ाइलों की प्रतिलिपि बनाने के लिए /usr/include/python2.7 में जाने के लिए यह पूछने का सबसे आसान तरीका है, मैं इस तरह की समस्या के लिए एक सामान्य और पोर्टेबल समाधान की उम्मीद कर रहा हूं।

मॉड्यूल स्रोत (MANIFEST.in, README.txt, setup.py, आदि) में केवल डेटा बदलना, मैं Python.h और दोस्तों के लिए खोज पथ में मनमानी निर्देशिका कैसे जोड़ सकता हूं?

(एक समाधान के बिना, "अजगर का निर्माण setup.py" के साथ लौटने के लिए जारी रहेगा "Python.h: ऐसी कोई फ़ाइल या निर्देशिका" त्रुटि)

आपको बहुत बहुत धन्यवाद।

+0

मुझे लगता है कि [सुपरयूसर] (http://superuser.com/) और/या [सर्वरफॉल्ट] (http://serverfault.com/) पर पोस्टिंग भी फायदेमंद साबित हो सकती है – inspectorG4dget

+0

धन्यवाद, करेंगे । – ca2longoria

+0

इससे मदद मिल सकती है: http://docs.python.org/install/index.html#alternate-installation-the-user-checheme –

उत्तर

7

संकलित संकुल के निर्माण के लिए, आपको फ़ाइलों को शामिल करने के लिए एक अलग स्थान देखने के लिए setup.py के कॉन्फ़िगर चरण को बताना होगा। मैं यह इतना की तरह किया जा सकता है विश्वास:

python setup.py config --help 

:

python setup.py config --with-includepath=/path/to/your/install/of/python/includes/ 

तुम भी अन्य फ़ाइलों का स्थान (जैसे पुस्तकालयों के रूप में), जिसमें मामले पर एक नज़र के बारे में setup.py बताने के लिए आवश्यकता हो सकती है और --libraries और --library-dirs विकल्पों को देखें। स्थान जिसके परिणामस्वरूप पैकेज के लिए स्थापित किया गया है बदलने के लिए, के निर्माण के बाद उपसर्ग विकल्प का उपयोग उदा .:

python setup.py install --prefix=/path/to/install/to/ 

हालांकि विकल्पों में से सही संयोजन आप पैकेज आप स्थापित कर रहे पर निर्भर कर सकते आवश्यकता होती है। यदि आपको अक्सर ऐसा करने की ज़रूरत है, तो मुझे लगता है कि यह setup.cfg कॉन्फ़िगरेशन फ़ाइल निर्दिष्ट करके किया जा सकता है, जैसा कि here पर चर्चा की गई है।