पाइथन 2.7.3 का उपयोग 64-बिट उबंटू 12.04 पर Numpy 1.6.2 के साथ। सिस्टम पर अतिरिक्त संस्करण मौजूद हैं (पायथन 2.6.4 और नम्पी 1.6.1) लेकिन मेरे ज्ञान के सर्वश्रेष्ठ से नीचे वर्णित घटनाओं पर इसका कोई प्रभाव नहीं पड़ता है।पाइथन-डीबीजी (अपरिभाषित प्रतीक: Py_InitModule4_64)
मैं एक पायथन प्रोग्राम पर काम कर रहा हूं जो Numpy का उपयोग करता है, और जब मैं प्रोग्राम से एक निश्चित कमांड चलाने की कोशिश करता हूं तो त्रुटि प्राप्त होती है। इसलिए, मैंने प्रोग्राम चलाने के लिए python2.7-dbg इंस्टॉल करने का निर्णय लिया और देखा कि क्या यह डिबगिंग में मदद कर सकता है। इसलिए मैं
$ python-dbg <command>
बजाय
$ python <command>
हालांकि चलाने के लिए, यह एक "अपरिभाषित प्रतीक: Py_InitModule4_64" देता है Numpy से संबंधित त्रुटि। इससे कोई फर्क नहीं पड़ता कि मैं वास्तव में चलाने की कोशिश करता हूं; त्रुटि "आदेश" पायथन के साथ चलने वाले आदेशों के लिए भी होती है। यह भी होता है अगर मैं एक खाली अजगर-dbg शीघ्र में numpy आयात करने का प्रयास:
$ python-dbg
Python 2.7.3 (default, Aug 1 2012, 04:55:00)
[GCC 4.6.3] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import numpy
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/local/lib/python2.7/dist-packages/numpy/__init__.py", line 137, in <module>
import add_newdocs
File "/usr/local/lib/python2.7/dist-packages/numpy/add_newdocs.py", line 9, in <module>
from numpy.lib import add_newdoc
File "/usr/local/lib/python2.7/dist-packages/numpy/lib/__init__.py", line 4, in <module>
from type_check import *
File "/usr/local/lib/python2.7/dist-packages/numpy/lib/type_check.py", line 8, in <module>
import numpy.core.numeric as _nx
File "/usr/local/lib/python2.7/dist-packages/numpy/core/__init__.py", line 5, in <module>
import multiarray
ImportError: /usr/local/lib/python2.7/dist-packages/numpy/core/multiarray.so: undefined symbol: Py_InitModule4_64
[134187 refs]
>>>
आयात कर रहा है numpy सफल होता है जब एक शुद्ध अजगर प्रॉम्प्ट में।
मुझे इंटरनेट पर कोई भाग्य जानकारी नहीं मिली है। मेरी त्रुटि का सबसे नज़दीकी मैच this bug on debian है जो एक ही स्थिति है लेकिन किसी और जानकारी प्रदान करने से पहले बंद कर दिया गया है। मैंने एपीटी से पायथन-नॅपी-डीबीजी और पायथन-एपीटी-डीबीजी पैकेज दोनों स्थापित किए हैं; मेरे पास मशीन तक सुडो पहुंच है इसलिए मेरे द्वारा किए गए परिवर्तन वैध सिस्टम-व्यापी हैं। जहां तक मुझे पता है, मैं जिस भी प्रक्रिया को चलाने की कोशिश कर रहा हूं, उसके लिए कोई भी क्रोट विकल्प सेट नहीं किया गया है, इसलिए डेबियन बग पेज मुझे कोई मदद नहीं है।
किसी भी सहायता की सराहना की जाएगी।
आप अपने '$ PYTHONPATH' पर्यावरण चर को देखना चाहते हैं। उबंटू के लिए सिर्फ अजगर-numpy-dbg पैकेज को देखकर इसे/usr/local/lib से आयात नहीं किया जाना चाहिए। यही इस बारे में अजीब लग रहा है। – Iguananaut
या, बिंदु पर अधिक, यहां तक कि यदि '$ PYTHONPATH' पर कुछ भी नहीं है, ऐसा लगता है कि आपने अपनी खुद की प्रतिलिपि (शायद पीपी या easy_install का उपयोग करके) स्थापित की है और यह उपयुक्त द्वारा स्थापित Numpy का सुपरसर्ड्स कर रहा है। – Iguananaut
धन्यवाद, मुझे लगता है कि आपने मुझे सही रास्ते पर सेट किया है। इस परियोजना में शामिल होने से पहले सिस्टम पर मौजूद numpy (1.6.1) का पिछले संस्करण /usr/lib/python2.7/dist-packages में है, और जिसे मैंने स्थापित किया है (1.6.2) पाइप के माध्यम से है /usr/local/lib/python2.7/dist-packages में रखा गया है। मुझे नहीं लगता था कि इससे बहुत अधिक मायने रखता है लेकिन अब मैंने sys.path की जांच की है, numpy वहाँ नहीं था। तो अब मैं पथ में नया numpy जोड़ने की कोशिश करूँगा, या पुराने पर वापस आ जाएगा। – Boris