के साथ py2app का उपयोग करने में समस्या मैं कुछ पायथन स्क्रिप्ट से एक स्टैंडअलोन एप्लिकेशन उत्पन्न करने के लिए 'py2app' का उपयोग करने की कोशिश कर रहा हूं। पायथन 'lxml' पैकेज का उपयोग करता है, और मुझे पता चला है कि मुझे इसे स्पष्ट रूप से setup.py फ़ाइल में निर्दिष्ट करना है जो 'py2app' उपयोग करता है। हालांकि, परिणामस्वरूप एप्लिकेशन प्रोग्राम अभी भी उन मशीनों पर नहीं चलेगा जिनके पास 'lxml' स्थापित नहीं है।lxml पैकेज
मेरे Setup.py इस तरह दिखता है:
MyApp Error
An unexpected error has occurred during execution of the main script
ImportError: dlopen(/Users/ake/XXXX/XXXX/MyApp.app/Contents/Resources/lib/python2.5/lxml/etree.so, 2): Symbol not found: _xmlSchematronParse
Referenced from: /Users/ake/XXXX/XXXX/MyApp.app/Contents/Resources/lib/python2.5/lxml/etree.so
Expected in: dynamic lookup
'libxml2' है कि कहा जाता है प्रतीक '_xmlSchematronParse' है एक पुस्तकालय से 'lxml:
from setuptools import setup
OPTIONS = {'argv_emulation': True, 'packages' : ['lxml']}
setup(app=[MyApp.py],
data_files=[],
options={'py2app' : OPTIONS},
setup_requires=['py2app'])
आवेदन चल रहा है निम्नलिखित उत्पादन का उत्पादन ' निर्भर करता है। मैक ओएस एक्स के साथ प्रीइंस्टॉल किया गया संस्करण 'lxml' के लिए पर्याप्त नहीं है, इसलिए मुझे संस्करण 2.7.2 (/ usr/local) में स्थापित करना पड़ा। py2app, किसी कारण से, संस्करण में /Developer/SDKs/MacOSX10.3.9.sdk/usr/lib में लिंक कर रहा है। जब मैं पाइथन लिपि के रूप में अपना आवेदन चलाता हूं, तो सही संस्करण मिलता है। (मैंने अभी 2.7.2 संस्करण छुपाकर इसे चेक किया है।)
तो मेरा सवाल अब है, मैं पुस्तकालयों को देखने के लिए py2app कैसे कह सकता हूं?
क्या आपको अपने ऐप की सामग्री/फ्रेमवर्क उपदिर में libxml2.2.dylib मिलती है? –
हां, यह वहां है। –