मैं अजगर-ldap स्थापित नहीं कर सकता


265

जब मैं निम्नलिखित कमांड चलाता हूं:

sudo pip install python-ldap

मुझे यह त्रुटि मिली:

मॉड्यूल / LDAPObject.c से शामिल फ़ाइल में: 9:

मॉड्यूल / त्रुटियाँ। H: 8: घातक त्रुटि: lber.h: ऐसी कोई फ़ाइल या निर्देशिका नहीं है

इसे ठीक करने का कोई तरीका?


1
इस तरह मैंने इसे मेरे लिए तय किया। मैं अमेज़ॅन ईसी 2-इंस्टेंस पर हूं और मैंने अपनी usr/bin/निर्देशिका में जाकर देखा कि मैंने pip, pip-2.7, pip-3.6, and pip-pythonऐसा किया था sudo pip-3.6 install ldap3और यह मेरे लिए काम कर गया।
काइल ब्रिडेनस्टाइन

1
@KyleBridenstine python-ldap ldap3 के समान नहीं है।
डेविड मूलर

जवाबों:


427

अजगर-ldap , OpenLDAP के आधार पर तो आप आदेश पायथन मॉड्यूल को संकलित करने में विकास फ़ाइलें (हेडर) की आवश्यकता है। यदि आप उबंटू पर हैं, तो पैकेज कहा जाता है libldap2-dev

डेबियन / उबंटू :

sudo apt-get install libsasl2-dev python-dev libldap2-dev libssl-dev

RedHat / CentOS :

sudo yum install python-devel openldap-devel

2
उसके लिए धन्यवाद। यह आगे मिल गया है यह अब sasl.h के साथ विफल हो रहा है ऐसी कोई फ़ाइल या निर्देशिका नहीं है
वैक्यूम जू

68
@VacuumTube: गुम हेडर लगभग हमेशा लापता -devपैकेज (कभी-कभी नाम भी -devel) के लिए एक संकेत है । बस करो apt-cache search sasl | grep devऔर तुम शायद सही पैकेज मिल जाएगा - मुझे लगता है कि यह होगा libsasl2-dev
एंडीडॉग

5
विंडोज़ उपयोगकर्ताओं के लिए कुछ भी :( एक ही त्रुटि, अब तक कोई समाधान नहीं
शैलेन

4
आपको विंडोज पर स्रोत से संकलन करने की आवश्यकता नहीं है। बस pypi.python.org/pypi/python-ldap से किसी एक इंस्टॉलर का उपयोग करें ।
सेमल

3
इसके अलावा, विंडोज उपयोगकर्ता एक virtualenv में स्थापित करने के लिए .msi इंस्टॉलर @Semmel का उल्लेख कर सकते हैं: कैसे संकलन के बिना खिड़कियों पर एक अजगर 2.7 वर्चुअन पर अजगर- लाडप स्थापित करें (अपडेट 2 देखें)
डेव

143

अजगर को सफलतापूर्वक पाइप के साथ स्थापित करने के लिए, निम्नलिखित विकास पुस्तकालयों की आवश्यकता होती है (ubuntu पर्यावरण से लिए गए पैकेज नाम):

sudo apt-get install -y python-dev libldap2-dev libsasl2-dev libssl-dev

धन्यवाद। यह आप सभी की जरूरत है फिर आप चलेsudo pip install python-ldap
सुदीप्ता बसक

71

CentOS / RHEL 6 पर, आपको इंस्टॉल करने की आवश्यकता है:

sudo yum install python-devel
sudo yum install openldap-devel

और यम भी cyrus-sasl-develएक निर्भरता के रूप में स्थापित होगा । तब आप चला सकते हैं:

pip-2.7 install python-ldap


15

विंडोज: मैं पूरी तरह से स्वीकार किए गए जवाब से सहमत हूं, लेकिन टिप्पणियों के माध्यम से खुदाई करने के लिए मुझे क्या चाहिए, इसके मांस को प्राप्त करने में थोड़ा समय लगा। मैं इस विशिष्ट समस्या पर विंडोज पर बिटनमी का उपयोग करके रिव्यूबोर्ड के साथ भाग गया। तब खिड़कियों के लिए एक उत्तर देने के लिए, मैंने टिप्पणियों में उल्लिखित इस लिंक का उपयोग किया:

फिर, निम्न आदेशों को निष्पादित किया

easy_install pip
pip install python_ldap-2.4.20-cp27-none_win32.whl

(क्योंकि मैं अजगर 2.7 था और उस पर एक 32 बिट स्थापित)

easy_install python-ldap


12

"सॉफ्टवेयर को आँख बंद करके स्थापित / स्थापित न करें"

उबंटू / डेबियन आधारित डिस्ट्रो में, आप apt-fileसटीक पैकेज का नाम खोजने के लिए उपयोग कर सकते हैं जिसमें लापता हेडर फ़ाइल शामिल है।

# do this once
sudo apt-get install apt-file
sudo apt-file update

$ apt-file search lber.h
libldap2-dev: /usr/include/lber.h

जैसा कि आप के आउटपुट से देख सकते हैं apt-file search lber.h, आपको सिर्फ पैकेज स्थापित करना होगा libldap2-dev

sudo apt-get install libldap2-dev

2
यह वास्तव में शीर्ष पर होना चाहिए। यह बेहद मददगार है।
बोबार्ट

क्या कोई सेंटोओएस इसके बराबर है?
टॉमिस्लाव अर्बन

11

उन लोगों के लिए जो अल्पाइन लिनक्स पर Iber.h लापता का एक ही मुद्दा रखते हैं, एक डॉक इमेज में जिसे आप उदाहरण के लिए अल्पाइन के अनुकूल बनाने की कोशिश कर रहे हैं।

आप जिस पैकेज की तलाश कर रहे हैं, वह है: ओपनडैप-देव

तो दौड़ो

apk add openldap-dev

संस्करण 3.3 से एज तक उपलब्ध है

दोनों armhf और x86_64 आर्किटेक्चर के लिए उपलब्ध है।


अल्पाइन-आधारित छवियों के लिए अच्छा है। धन्यवाद।
रोज़ेज़ेक


4

फेडोरा 22 पर, आपको इसके बजाय ऐसा करने की आवश्यकता है:

sudo dnf install python-devel
sudo dnf install openldap-devel

F25 के लिए अभी भी सच है
जेरथ

2

OSX पर, आपको xcode CLI टूल की आवश्यकता है। बस एक टर्मिनल खोलें और चलाएं:

xcode-select --install

2

के लिए सबसे प्रणालियों , निर्माण आवश्यकताओं अब में उल्लेख कर रहे अजगर-ldap के प्रलेखन , "स्थापित" खंड में।

यदि आपके सिस्टम के लिए कुछ भी गायब है (या आपका सिस्टम पूरी तरह से गायब है), तो कृपया अनुरक्षक को बताएं! (2018 तक, मैं अनुरक्षक हूं, इसलिए यहां एक टिप्पणी पर्याप्त होनी चाहिए। या आप एक पुल अनुरोध या मेल भेज सकते हैं।)


धन्यवाद, ध्यान देने योग्य हो सकता है कि यदि आप python3 चला रहे हैं, तो आपको python3-devel की आवश्यकता होगी, बजाय python-devel की।
जेमी


2

अजगर को स्थापित करने के लिए निर्भरता के कारण त्रुटि को ठीक करने के लिए- ldap: विंडोज 7/10

पूरी फ़ाइल डाउनलोड करें

http://www.lfd.uci.edu/~gohlke/pythonlibs/#python-ldap

अजगर 3.6 के साथ सूट

python_ldap-3.2.0-cp36-cp36m-win_amd64.whl

फ़ाइल को इसमें तैनात करें:

c: \ python36 \ स्क्रिप्ट \

इसके साथ स्थापित करें

python -m pip install python_ldap-3.2.0-cp36-cp36m-win_amd64.whl

1

FreeBSD 11 में:

pkg install openldap-client # for lber.h
pkg install cyrus-sasl # if you need sasl.h
pip install python-ldap

1

बाइनरी डिपेंडेंसी [1] पर डेबियन / उबंटू के साथ पायथन पैकेज स्थापित करने के लिए एक सामान्य समाधान के रूप में:

sudo apt-get build-dep python-ldap
# installs system dependencies (but not the package itself)
pew workon my_virtualenv # enter your virtualenv
pip install python-ldap

आपको Ubuntu बनाम PyPI पर अपने पायथन पैकेज के नाम की जांच करनी होगी। इस मामले में वे समान हैं।

स्पष्ट रूप से काम नहीं करता है यदि पायथन पैकेज उबंटू रिपोज में नहीं है।

[१] pip install matplotlibउबंटू को आजमाने पर मैंने यह ट्रिक सीखी ।



0

यदि आप विंडोज़ मशीनों के साथ काम कर रहे हैं, तो आप इस लिंक में 'अजगर-ldap' व्हील पा सकते हैं और फिर आप इसे स्थापित कर सकते हैं


0

उन लोगों के लिए जो एल्फाइन लाइनक्स का उपयोग कर रहे हैं, एपीके ओपनडैप-देव जोड़ें


हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.