user3139774
user3139774

Reputation: 1335

pip install fails in virtualenv while succeeds outside the virtualenv

We've installed virtualenv on centos, based on python 2.7.
pip install succeeds for most libs, but trying to pip install python-ldap for example - fails. This happens even though same pip install outside the virtualenv succeeded.

We run CentOS 7.

(py2.7) ramia@vd-ramia:~$  pip install python-ldap==2.4.15
Collecting python-ldap==2.4.15
/home/ramia/envs/py2.7/lib/python2.7/site-packages/pip/_vendor/requests/packages/urllib3/util/ssl_.py:318: SNIMissingWarning: An HTTPS request has been made, but the SNI (Subject Name Indication) extension to TLS is not available on this platform. This may cause the server to present an incorrect TLS certificate, which can cause validation failures. You can upgrade to a newer version of Python to solve this. For more information, see https://urllib3.readthedocs.org/en/latest/security.html#snimissingwarning.
  SNIMissingWarning
/home/ramia/envs/py2.7/lib/python2.7/site-packages/pip/_vendor/requests/packages/urllib3/util/ssl_.py:122: InsecurePlatformWarning: A true SSLContext object is not available. This prevents urllib3 from configuring SSL appropriately and may cause certain SSL connections to fail. You can upgrade to a newer version of Python to solve this. For more information, see https://urllib3.readthedocs.org/en/latest/security.html#insecureplatformwarning.
  InsecurePlatformWarning
  Using cached python-ldap-2.4.15.tar.gz
Requirement already satisfied (use --upgrade to upgrade): setuptools in /home/ramia/envs/py2.7/lib/python2.7/site-packages (from python-ldap==2.4.15)
Building wheels for collected packages: python-ldap
  Running setup.py bdist_wheel for python-ldap ... error
  Complete output from command /home/ramia/envs/py2.7/bin/python -u -c "import setuptools, tokenize;__file__='/tmp/pip-build-49710t/python-ldap/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" bdist_wheel -d /tmp/tmpY1tbnWpip-wheel- --python-tag cp27:
  defines: HAVE_SASL HAVE_TLS HAVE_LIBLDAP_R
  extra_compile_args:
  extra_objects:
  include_dirs: /opt/openldap-RE24/include /usr/include/sasl /usr/include
  library_dirs: /opt/openldap-RE24/lib /usr/lib
  libs: ldap_r
  running bdist_wheel
  running build
  running build_py
  file Lib/ldap.py (for module ldap) not found
  file Lib/ldap/controls.py (for module ldap.controls) not found
  file Lib/ldap/extop.py (for module ldap.extop) not found
  file Lib/ldap/schema.py (for module ldap.schema) not found
  creating build
  creating build/lib.linux-x86_64-2.7
  copying Lib/ldapurl.py -> build/lib.linux-x86_64-2.7
  copying Lib/ldif.py -> build/lib.linux-x86_64-2.7
  copying Lib/dsml.py -> build/lib.linux-x86_64-2.7
  creating build/lib.linux-x86_64-2.7/ldap
  copying Lib/ldap/__init__.py -> build/lib.linux-x86_64-2.7/ldap
  copying Lib/ldap/async.py -> build/lib.linux-x86_64-2.7/ldap
  creating build/lib.linux-x86_64-2.7/ldap/controls
  copying Lib/ldap/controls/__init__.py -> build/lib.linux-x86_64-2.7/ldap/controls
  copying Lib/ldap/controls/libldap.py -> build/lib.linux-x86_64-2.7/ldap/controls
  copying Lib/ldap/controls/openldap.py -> build/lib.linux-x86_64-2.7/ldap/controls
  copying Lib/ldap/controls/ppolicy.py -> build/lib.linux-x86_64-2.7/ldap/controls
  copying Lib/ldap/controls/psearch.py -> build/lib.linux-x86_64-2.7/ldap/controls
  copying Lib/ldap/controls/pwdpolicy.py -> build/lib.linux-x86_64-2.7/ldap/controls
  copying Lib/ldap/controls/readentry.py -> build/lib.linux-x86_64-2.7/ldap/controls
  copying Lib/ldap/controls/sessiontrack.py -> build/lib.linux-x86_64-2.7/ldap/controls
  copying Lib/ldap/controls/simple.py -> build/lib.linux-x86_64-2.7/ldap/controls
  copying Lib/ldap/cidict.py -> build/lib.linux-x86_64-2.7/ldap
  copying Lib/ldap/dn.py -> build/lib.linux-x86_64-2.7/ldap
  creating build/lib.linux-x86_64-2.7/ldap/extop
  copying Lib/ldap/extop/__init__.py -> build/lib.linux-x86_64-2.7/ldap/extop
  copying Lib/ldap/extop/dds.py -> build/lib.linux-x86_64-2.7/ldap/extop
  copying Lib/ldap/filter.py -> build/lib.linux-x86_64-2.7/ldap
  copying Lib/ldap/functions.py -> build/lib.linux-x86_64-2.7/ldap
  copying Lib/ldap/ldapobject.py -> build/lib.linux-x86_64-2.7/ldap
  copying Lib/ldap/logger.py -> build/lib.linux-x86_64-2.7/ldap
  copying Lib/ldap/modlist.py -> build/lib.linux-x86_64-2.7/ldap
  copying Lib/ldap/resiter.py -> build/lib.linux-x86_64-2.7/ldap
  copying Lib/ldap/sasl.py -> build/lib.linux-x86_64-2.7/ldap
  creating build/lib.linux-x86_64-2.7/ldap/schema
  copying Lib/ldap/schema/__init__.py -> build/lib.linux-x86_64-2.7/ldap/schema
  copying Lib/ldap/schema/models.py -> build/lib.linux-x86_64-2.7/ldap/schema
  copying Lib/ldap/schema/subentry.py -> build/lib.linux-x86_64-2.7/ldap/schema
  copying Lib/ldap/schema/tokenizer.py -> build/lib.linux-x86_64-2.7/ldap/schema
  copying Lib/ldap/syncrepl.py -> build/lib.linux-x86_64-2.7/ldap
  file Lib/ldap.py (for module ldap) not found
  file Lib/ldap/controls.py (for module ldap.controls) not found
  file Lib/ldap/extop.py (for module ldap.extop) not found
  file Lib/ldap/schema.py (for module ldap.schema) not found
  running egg_info
  creating Lib/python_ldap.egg-info
  writing requirements to Lib/python_ldap.egg-info/requires.txt
  writing Lib/python_ldap.egg-info/PKG-INFO
  writing top-level names to Lib/python_ldap.egg-info/top_level.txt
  writing dependency_links to Lib/python_ldap.egg-info/dependency_links.txt
  writing manifest file 'Lib/python_ldap.egg-info/SOURCES.txt'
  warning: manifest_maker: standard file '-c' not found

  file Lib/ldap.py (for module ldap) not found
  file Lib/ldap/controls.py (for module ldap.controls) not found
  file Lib/ldap/extop.py (for module ldap.extop) not found
  file Lib/ldap/schema.py (for module ldap.schema) not found
  reading manifest file 'Lib/python_ldap.egg-info/SOURCES.txt'
  reading manifest template 'MANIFEST.in'
  warning: no files found matching 'Makefile'
  warning: no files found matching 'Modules/LICENSE'
  writing manifest file 'Lib/python_ldap.egg-info/SOURCES.txt'
  running build_ext
  building '_ldap' extension
  creating build/temp.linux-x86_64-2.7
  creating build/temp.linux-x86_64-2.7/Modules
  gcc -pthread -fno-strict-aliasing -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic -D_GNU_SOURCE -fPIC -fwrapv -DNDEBUG -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic -D_GNU_SOURCE -fPIC -fwrapv -fPIC -DHAVE_SASL -DHAVE_TLS -DHAVE_LIBLDAP_R -DHAVE_LIBLDAP_R -DLDAPMODULE_VERSION=2.4.15 -IModules -I/opt/openldap-RE24/include -I/usr/include/sasl -I/usr/include -I/usr/include/python2.7 -c Modules/LDAPObject.c -o build/temp.linux-x86_64-2.7/Modules/LDAPObject.o
  In file included from Modules/LDAPObject.c:9:0:
  Modules/errors.h:8:18: fatal error: lber.h: No such file or directory
   #include "lber.h"
                    ^
  compilation terminated.
  error: command 'gcc' failed with exit status 1

  ----------------------------------------
  Failed building wheel for python-ldap
  Running setup.py clean for python-ldap
Failed to build python-ldap
Installing collected packages: python-ldap
  Running setup.py install for python-ldap ... error
    Complete output from command /home/ramia/envs/py2.7/bin/python -u -c "import setuptools, tokenize;__file__='/tmp/pip-build-49710t/python-ldap/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /tmp/pip-fsuT_N-record/install-record.txt --single-version-externally-managed --compile --install-headers /home/ramia/envs/py2.7/include/site/python2.7/python-ldap:
    defines: HAVE_SASL HAVE_TLS HAVE_LIBLDAP_R
    extra_compile_args:
    extra_objects:
    include_dirs: /opt/openldap-RE24/include /usr/include/sasl /usr/include
    library_dirs: /opt/openldap-RE24/lib /usr/lib
    libs: ldap_r
    running install
    running build
    running build_py
    file Lib/ldap.py (for module ldap) not found
    file Lib/ldap/controls.py (for module ldap.controls) not found
    file Lib/ldap/extop.py (for module ldap.extop) not found
    file Lib/ldap/schema.py (for module ldap.schema) not found
    creating build
    creating build/lib.linux-x86_64-2.7
    copying Lib/ldapurl.py -> build/lib.linux-x86_64-2.7
    copying Lib/ldif.py -> build/lib.linux-x86_64-2.7
    copying Lib/dsml.py -> build/lib.linux-x86_64-2.7
    creating build/lib.linux-x86_64-2.7/ldap
    copying Lib/ldap/__init__.py -> build/lib.linux-x86_64-2.7/ldap
    copying Lib/ldap/async.py -> build/lib.linux-x86_64-2.7/ldap
    creating build/lib.linux-x86_64-2.7/ldap/controls
    copying Lib/ldap/controls/__init__.py -> build/lib.linux-x86_64-2.7/ldap/controls
    copying Lib/ldap/controls/libldap.py -> build/lib.linux-x86_64-2.7/ldap/controls
    copying Lib/ldap/controls/openldap.py -> build/lib.linux-x86_64-2.7/ldap/controls
    copying Lib/ldap/controls/ppolicy.py -> build/lib.linux-x86_64-2.7/ldap/controls
    copying Lib/ldap/controls/psearch.py -> build/lib.linux-x86_64-2.7/ldap/controls
    copying Lib/ldap/controls/pwdpolicy.py -> build/lib.linux-x86_64-2.7/ldap/controls
    copying Lib/ldap/controls/readentry.py -> build/lib.linux-x86_64-2.7/ldap/controls
    copying Lib/ldap/controls/sessiontrack.py -> build/lib.linux-x86_64-2.7/ldap/controls
    copying Lib/ldap/controls/simple.py -> build/lib.linux-x86_64-2.7/ldap/controls
    copying Lib/ldap/cidict.py -> build/lib.linux-x86_64-2.7/ldap
    copying Lib/ldap/dn.py -> build/lib.linux-x86_64-2.7/ldap
    creating build/lib.linux-x86_64-2.7/ldap/extop
    copying Lib/ldap/extop/__init__.py -> build/lib.linux-x86_64-2.7/ldap/extop
    copying Lib/ldap/extop/dds.py -> build/lib.linux-x86_64-2.7/ldap/extop
    copying Lib/ldap/filter.py -> build/lib.linux-x86_64-2.7/ldap
    copying Lib/ldap/functions.py -> build/lib.linux-x86_64-2.7/ldap
    copying Lib/ldap/ldapobject.py -> build/lib.linux-x86_64-2.7/ldap
    copying Lib/ldap/logger.py -> build/lib.linux-x86_64-2.7/ldap
    copying Lib/ldap/modlist.py -> build/lib.linux-x86_64-2.7/ldap
    copying Lib/ldap/resiter.py -> build/lib.linux-x86_64-2.7/ldap
    copying Lib/ldap/sasl.py -> build/lib.linux-x86_64-2.7/ldap
    creating build/lib.linux-x86_64-2.7/ldap/schema
    copying Lib/ldap/schema/__init__.py -> build/lib.linux-x86_64-2.7/ldap/schema
    copying Lib/ldap/schema/models.py -> build/lib.linux-x86_64-2.7/ldap/schema
    copying Lib/ldap/schema/subentry.py -> build/lib.linux-x86_64-2.7/ldap/schema
    copying Lib/ldap/schema/tokenizer.py -> build/lib.linux-x86_64-2.7/ldap/schema
    copying Lib/ldap/syncrepl.py -> build/lib.linux-x86_64-2.7/ldap
    file Lib/ldap.py (for module ldap) not found
    file Lib/ldap/controls.py (for module ldap.controls) not found
    file Lib/ldap/extop.py (for module ldap.extop) not found
    file Lib/ldap/schema.py (for module ldap.schema) not found
    running egg_info
    writing requirements to Lib/python_ldap.egg-info/requires.txt
    writing Lib/python_ldap.egg-info/PKG-INFO
    writing top-level names to Lib/python_ldap.egg-info/top_level.txt
    writing dependency_links to Lib/python_ldap.egg-info/dependency_links.txt
    warning: manifest_maker: standard file '-c' not found

    file Lib/ldap.py (for module ldap) not found
    file Lib/ldap/controls.py (for module ldap.controls) not found
    file Lib/ldap/extop.py (for module ldap.extop) not found
    file Lib/ldap/schema.py (for module ldap.schema) not found
    reading manifest file 'Lib/python_ldap.egg-info/SOURCES.txt'
    reading manifest template 'MANIFEST.in'
    warning: no files found matching 'Makefile'
    warning: no files found matching 'Modules/LICENSE'
    writing manifest file 'Lib/python_ldap.egg-info/SOURCES.txt'
    running build_ext
    building '_ldap' extension
    creating build/temp.linux-x86_64-2.7
    creating build/temp.linux-x86_64-2.7/Modules
    gcc -pthread -fno-strict-aliasing -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic -D_GNU_SOURCE -fPIC -fwrapv -DNDEBUG -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic -D_GNU_SOURCE -fPIC -fwrapv -fPIC -DHAVE_SASL -DHAVE_TLS -DHAVE_LIBLDAP_R -DHAVE_LIBLDAP_R -DLDAPMODULE_VERSION=2.4.15 -IModules -I/opt/openldap-RE24/include -I/usr/include/sasl -I/usr/include -I/usr/include/python2.7 -c Modules/LDAPObject.c -o build/temp.linux-x86_64-2.7/Modules/LDAPObject.o
    In file included from Modules/LDAPObject.c:9:0:
    Modules/errors.h:8:18: fatal error: lber.h: No such file or directory
     #include "lber.h"
                      ^
    compilation terminated.
    error: command 'gcc' failed with exit status 1

    ----------------------------------------
Command "/home/ramia/envs/py2.7/bin/python -u -c "import setuptools, tokenize;__file__='/tmp/pip-build-49710t/python-ldap/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /tmp/pip-fsuT_N-record/install-record.txt --single-version-externally-managed --compile --install-headers /home/ramia/envs/py2.7/include/site/python2.7/python-ldap" failed with error code 1 in /tmp/pip-build-49710t/python-ldap/

Any ideas?

Thank you

Upvotes: 0

Views: 918

Answers (1)

user3139774
user3139774

Reputation: 1335

It turns out that upgrading the Centos version to CentOS Linux release 7.1.1503 (Core) solved the issue.

Cheers

Upvotes: 1

Related Questions