2013-10-24 6 views
14

सिस्टम:

  • ओएस एक्स मावेरिक्स 10.9 13A603
  • Xcode संस्करण 5.0.1 (5A2053)

समस्या:

Python.framework हो रहा है एक्सकोड के 10.9 एसडीके से गायब है।ओएस एक्स 10.9 एसडीके से Python.framework गुम है। क्यूं कर? इसके अलावा: वर्कअराउंड?

Python.framework Xcode 10.8 एसडीके में मौजूद है:

/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.8.sdk/System/Library/Frameworks/Python.framework 

हालांकि, यह यहां मेरी Xcode 10.9 एसडीके से लापता है:

/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/System/Library/Frameworks/ 

यह अजीब है क्योंकि Python.framework अब भी है यहां 10.9 सिस्टम पर उपयोगकर्ताओं के लिए उपलब्ध:

/System/Library/Frameworks/Python.framework 

क्या Python.framework जानबूझकर हटा दिया गया है f 10.9 एसडीके रोम? क्या यह इस ढांचे का उपयोग बंद करने के लिए ऐप्पल से एक बहुत ही सूक्ष्म संकेत है? या मैं बस उलझन में हूँ?

नोट्स:

यह मायने रखती है क्योंकि मैं एक ओएस एक्स आवेदन जो Python.framework के खिलाफ लिंक है। ऐसा लगता है कि मैं बेस एसडीके के साथ अपना आवेदन नहीं बना सकता 10.9 की स्थापना की स्थापना के बाद से Python.framework गुम है, और मुझे इसे लिंक करना होगा।

मुझे इस ढांचे में क्यों गुम है (या मैं गलत क्यों हूं और वास्तव में गायब नहीं है) के साथ-साथ कामकाज के सुझावों के लिए दोनों स्पष्टीकरणों में दिलचस्पी है।

+0

इस के बाद से एक नया मुद्दा यह है कि Homebrew, MacPorts, आदि समुदायों बस पर काम करने की हो रही है है, तो आप शायद के सभी पर नज़र के रूप में, उनके ट्रैकर दोनों पर कीड़े मिलान के लिए खोज करना चाहते हैं और साथ ही यहां दाईं तरफ के संबंधित लिंक, क्योंकि संभावना है कि कोई भी आपके प्रश्न का उत्तर पोस्ट करेगा, इससे पहले कि सभी दर्जनों अन्य लोग बहुत पतले लगते हैं। – abarnert

+0

(वैसे, यह _actually_ brand new नहीं है, यह अभी तक है कि हाल ही में जब तक इसकी सभी चर्चा एनडीए मंचों पर थी ... लेकिन मुझे कुछ महीने पहले उनके लिए कोई जवाब नहीं मिला, और इसे बाद में बंद कर दिया गया ... और अब मुझे लगता है कि यह बाद में है ...) – abarnert

+0

क्या आप सीधे /System/Library/Frameworks/Python.framework से सीधे लिंक नहीं कर सकते हैं? –

उत्तर

15

विषय पर एक अधिकारी ने एप्पल सहायता पृष्ठ है:

Changes To Embedding Python Using Xcode 5.0

असल में, वे क्या कहते यह है कि एसडीके Python.framework के साथ पायथन के साथ एकीकृत करने की विधि को हटा दिया गया है, और इसके बजाय python.h शीर्षलेख का उपयोग करने के मानक * निक्स विधि का उपयोग किया जाना चाहिए।

है (नीचे दिए गए निर्देशों का एक सारांश कर रहे हैं - अधिक जानकारी के लिए जुड़े हुए लेख पर गौर करें):

  1. #include <Python.h> के साथ बदलें #include <Python/Python.h>;
  2. शीर्षलेख खोज पथ में पाइथन शीर्षलेख स्थान शामिल करें;
  3. प्रोजेक्ट बिल्ड से Python.framework हटाएं;
  4. पाइथन .dylib फ़ाइल को एक्सकोड में जोड़ें;

औचित्य का सवाल है, वे इसे नहीं विस्तार करते हैं, वे केवल कि उल्लेख:

क्योंकि अजगर एक रूपरेखा है, यह भी एसडीके में रहता है, भले ही अजगर (या किसी भी पटकथा भाषा) दो जगहों में कठिनाइयों का सामना करना पड़ रहा है। लंबी अवधि और हाल के मुद्दों दोनों के कारण, एसडीके से पायथन को हटाने का निर्णय लिया गया।

+2

ध्यान दें कि चीजों को करने का मानक * निक्स तरीका '-I $ (पायथन-कॉन्फ़िगरेशन - शामिल है) 'और इसी तरह है ... लेकिन स्थान को ढूंढने और इसे स्थिर रूप से जोड़ने से Xcode के भीतर करना मुश्किल है ... – abarnert

1

मैं भी में भाग (और हल) इस समस्या:

/bin/sh ../libtool --silent --tag=CC --mode=link gcc -I../include -I../ -g -O2 -Wall \ 
    -isysroot <blah>/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk \ 
    -Wl,-F/System/Library/Frameworks \ 
    -framework Python \ 
    -u _PyMac_Error \ 
    -o libdnet.la -\ 
    rpath /usr/local/lib *.lo 

चीजें हैं जो शुरू में मेरे लिए बाहर कूद गया था कि gnu libtool मैं उपयोग कर रहा था किया था -Wl झंडा मोर्चे पर संलग्न -F का। तो, मैं

 -F/System/Library/Frameworks 
    -L/System/Library/Frameworks (just to be safe) 

फिर कहा, दूसरी बात यह है कि बहुत स्पष्ट था कि '-framework अजगर' हमेशा की तरह की तरह .framework प्रत्यय नहीं था। इसलिए, मैंने यह भी जोड़ा कि

 -framework Python.framework 

मुझे अभी भी काम करने में काम नहीं मिल सका।तब मुझे पता चला कि यह क्या था:

लंबी कहानी छोटी, और मुझे नहीं पता कि यह क्यों काम करता है या क्यों उन्होंने कुछ बदल दिया, और मैं विशेष रूप से उलझन में हूं कि पाइथन.फ्रेमवर्क अब एसडीके में नहीं है (दी, तो वह उससे हमेशा अजीब जोड़ने था, लेकिन यह मुझे कुछ समय ले अपने आप का प्रशिक्षण प्राप्त करेंगे ..

-framework बस को -f

बोनस दौर को बदलने की आवश्यकता है, वहाँ है एक पायथन प्रणाली व्यापक सेटिंग्स वस्तु, साथ ही साथ 'पायथन-conf ig 'सीएलआई प्रोग्राम जिसे तय करने की आवश्यकता होगी ताकि वे इस खराब सेटिंग को और अधिक प्रचार न करें।

-1

अगर आप Xcode कमांड लाइन उपकरण स्थापित ढांचा उपलब्ध हो जाएगा:

xcode-select --install 
+0

एचएम, मैंने कोशिश की, लेकिन अभी भी कोई पाइथन.फ्रेमवर्क '/ अनुप्रयोग /Xcode.app' में नहीं है/सामग्री/डेवलपर/प्लेटफार्म/MacOSX.platform/डेवलपर/SDKs/MacOSX10.9.sdk/सिस्टम/लाइब्रेरी/Frameworks'। –

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