2013-07-02 12 views
10

मेरे पास पीपीपीआई भंडार में एक पैकेज है।पाइथन विंडोज इंस्टालर सभी निर्भरताओं के साथ?

python3 setup.py register sdist bdist_wininst upload 

हालांकि, जब कोई उपयोगकर्ता संबद्ध exe फ़ाइल चलाता है, इसे स्थापित नहीं करता अजगर 3 ही: मैं एक नया संस्करण अपलोड करने के लिए निम्न आदेश चलाकर एक Windows इंस्टॉलर, विशेष रूप से 'bdist_wininst' शामिल हैं। इसके अलावा, यहां तक ​​कि यदि पायथन 3 स्थापित है, तो यह किसी भी संबंधित निर्भरता को स्थापित नहीं करेगा।

विंडोज इंस्टालर बनाने का सबसे अच्छा तरीका क्या है जो पाइथन 3 स्थापित करेगा यदि यह मेरे पैकेज और इसकी निर्भरताओं के साथ स्थापित नहीं है?

यदि यह संभव नहीं है, तो विंडोज़ इंस्टॉलर बनाने का सबसे अच्छा तरीका क्या है जो मेरे पैकेज और इसकी निर्भरताओं को स्थापित करेगा, मानते हैं कि पायथन 3 स्थापित है?

मैं उबंटू 12.04 पर हूं।

:

from distutils.core import setup 

import codecs 
try: 
    codecs.lookup('mbcs') 
except LookupError: 
    ascii = codecs.lookup('ascii') 
    func = lambda name, enc=ascii: {True: enc}.get(name=='mbcs') 
    codecs.register(func) 

setup(
    name='SIGACTor', 
    version='0.1.14dev', 
    description=open('README.txt').read(), 
    url='http://bitbucket.org/davidystephenson/sigactor', 
    author='David Y. Stephenson', 
    author_email='[email protected]', 
    packages=['sigactor'], 
    license='Proprietary', 
    long_description=open('README.txt').read(), 
    install_requires=[ 
     'beautifulsoup4', 
     'feedparser', 
     'python-dateutil', 
     'pyyaml' 
    ], 
) 
+1

लोग इस केवल एक बार में उत्तर देना चाहिए: http://askubuntu.com/questions/315428/python-windows-installer-with-all-dependencies --- askubuntu लोगों को वापस स्टैक ओवरफ्लो को इंगित करता है, शायद * यह * प्रश्न उस स्थान पर होना चाहिए जहां प्रश्न का उत्तर दिया गया है :) – mnagel

+0

मेरी माफ़ी - मुझे समझ में नहीं आया कि प्रश्न माइग्रेट किया जाएगा। –

+1

क्या आप विंडोज को निष्पादन योग्य बनाना चाहते हैं? क्या आपने 'py2exe' या 'PyInstaller' का उपयोग करने का प्रयास किया है? ये संकुल आपको एक एक्सई बनाने के लिए करेंगे जो आपके प्रोग्राम को चलाने के लिए पहले से ही पाइथन के बिना कंप्यूटर को स्थापित करता है। – sytech

उत्तर

3

आप definetely pynsist जो अपने संकुल के साथ पायथन बंडल कर सकते हैं और अच्छी तरह से स्थापित NSIS खुला स्रोत संस्थापक पर आधारित है बाहर का प्रयास करना चाहिए: यह किसी भी सहायता के है, यहाँ मेरी setup.py है https://pypi.python.org/pypi/pynsist

एनाकोंडा टीम फिर से निर्माता जो conda पर आधारित है और NSIS प्रदान करता है:

https://github.com/conda/constructor

अंत में इस दृष्टिकोण WinPython और सबसे अधिक स्थिर इंस्टॉलर का उपयोग InnoSetup कहा जाता है:

http://cyrille.rossant.net/create-a-standalone-windows-installer-for-your-python-application/

लेकिन अगर अपने पैकेज नहीं एक पुस्तकालय है, लेकिन एक आवेदन तो आप इसे (फ्रीज) अजगर और सभी निर्भरता के साथ बंडल कर सकते हैं, यहां तक ​​कि यह सेक pyinstaller का उपयोग कर:

http://www.pyinstaller.org

यह वही मैं भी पागल इंटरॉप निर्भरता के साथ मेरी क्षुधा के सभी के लिए उपयोग करें!

बोनस - pyinstaller के लिए स्वत: अद्यतन उपकरण:

https://github.com/JMSwag/PyUpdater

+0

+1।+0 साइथन का उल्लेख नहीं किया। +0 प्यूपडाटर, दुनिया की सबसे भ्रमित अद्यतन प्रणाली है। मैं इसे 2 दिनों के लिए अद्यतन करने की कोशिश कर रहा हूं ... अब। मुझे लगता है कि एसएएएस जाने का रास्ता है और डेस्कटॉप ऐप दुख की बात है। –

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