2016-06-08 25 views
10

के रूप में 'पैकेज में' नहीं मिल सका। मैं अपने पायथन प्रोग्राम को उबंटू पर निष्पादन योग्य बनाने के लिए nuitka टूल का उपयोग करने की कोशिश कर रहा हूं। यह ठीक काम करता है अगर कार्यक्रम में कोई आयात कथन नहीं है लेकिन जब मैं इसे किसी ऐसे प्रोग्राम पर उपयोग करता हूं तो टूटता है जो कुछ आयात करता है उदा।Nuitka त्रुटि पूर्ण आयात

test.py

import numpy 

print "hello, world." 

कमांडलाइन

nuitka --recurse-all --python-version=2.7 test.py 

पर प्रकार इस और मुझे इन त्रुटियों को देता

Nuitka:WARNING:/usr/lib/python2.7/dist-packages/numpy/numarray/functions.py:45: Cannot find 'copyreg' in package 'numpy.numarray' as absolute import. 
Nuitka:WARNING:/usr/lib/python2.7/dist-packages/numpy/distutils/npy_pkg_config.py:11: Cannot find 'configparser' in package 'numpy.distutils' as absolute import. 
Nuitka:WARNING:/usr/lib/python2.7/dist-packages/numpy/distutils/system_info.py:1765: Cannot find 'Numeric' in package 'numpy.distutils' as absolute import. 
Nuitka:WARNING:/usr/lib/python2.7/dist-packages/numpy/distutils/system_info.py:1770: Cannot find 'numarray' in package 'numpy.distutils' as absolute import. 
Nuitka:WARNING:/usr/lib/python2.7/dist-packages/numpy/f2py/diagnose.py:48: Cannot find 'numpy_distutils' in package 'numpy.f2py' as absolute import. 
Nuitka:WARNING:/usr/lib/python2.7/dist-packages/numpy/f2py/diagnose.py:87: Cannot find 'numpy_distutils.command.build_flib' in package 'numpy.f2py' as absolute import. 
+0

मुझे व्यक्तिगत रूप से मैक ओएस एक्स, पीआईपी के माध्यम से ताजा इंस्टॉल पर यह समस्या थी। निर्माण भी बहुत धीमा है –

+0

शायद विकल्प --recurse-निर्देशिका को सेट करने का प्रयास करें? – Hector

+0

क्या आप वर्चुअलएन्व या किसी भी आयात तंत्र का उपयोग कर रहे हैं जहां आयातित मॉडल पाइथनपैथ पर नहीं हैं? –

उत्तर

4

मैं अपने विशेष उपयोग के मामले लेकिन मैं यह भी के बारे में पता नहीं है नाइटका का उपयोग करते समय पैकेज त्रुटियों में समान रूप से सामना नहीं किया जा सकता है।

मैं स्क्लेल्चेमी का उपयोग कर रहा था और configparser के साथ एक समान समस्या थी।
डीबगिंग के लगभग एक दिन बाद मुझे पता चला कि नुइटका एसडब्ल्यूआईजी (गतिशील रूप से लोड की गई वस्तुओं को लोड) के साथ यात्रा करता है। मूल रूप से इसका क्या अर्थ है, कुछ कार्यक्रम/मॉड्यूल सशर्त आयात का उपयोग करके संगतता बढ़ाने की कोशिश करते हैं।
उदाहरण के लिए:

If python_version==3.5: 
    import thislibrary 
else: 
    import thatlibrary 

विशेष रूप से configparser पुस्तकालय python3 में configparser और को Python2 में ConfigParser नाम पर है।

:
तो क्या मूल रूप से हो रहा है कि nuitka जब आप स्पष्ट रूप से अजगर 2.

उपयोग कर रहे हैं मेरे लिए अजगर 3 सामान आयात करने के लिए ठीक SQLAlchemy के स्रोत कोड को संशोधित करने के लिए था और बदल if else निर्माण करने के लिए कोशिश कर रही है

import thatlibrary 

आप इस Guide टॉम Sheffler द्वारा

+0

मैंने सशर्त आयात का उपयोग नहीं किया और यह त्रुटि प्राप्त की। मैं अब इस सवाल पर एक बक्षीस रखने पर विचार कर रहा हूं। –

0

Official answer from Nuitaka.

लिखा में अधिक जानकारी प्राप्त कर सकते हैं 0

आप किसी अन्य समस्या की तरह किसी भी समस्या का सामना कर रहे हैं, जिसकी समस्या package 'matplotlib' as absolute import. इस समस्या का सामना कर रही है, फिर नीचे दिए गए टिप्पणियों को नीचे दी गई टिप्पणियों की जांच करें कि यह नीचे टिप्पणी के लिए उपयोगी है या नहीं।

मुझे लगता है कि आप 32 बिट अजगर का उपयोग कर किया जा सकता है विंडोज पर और 2GB RAM सीमा मारा। बेहतर भाग्य के लिए 64 बिट्स का प्रयोग करें। संयोग से मैं अगली रिलीज के लिए स्केलेबिलिटी सुधार पर काम कर रहा हूं जो इसे नहीं करना चाहिए। अब के लिए Nuitka सभी 1000 मॉड्यूल रैम में लोड करता है और उन्हें वैश्विक स्तर पर संकलित करता है। बहुत सी रैम की जरूरत है।

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