Open justmejust opened 4 years ago
erpnext@ubuntu:~/erpnext/frappe-bench$ bench get-app frappe_ldap https://github.com/saurabh6790/frappe_ldap.git WARN: bench is installed in editable mode! This is not the recommended mode of installation for production. Instead, install the package from PyPI with: `pip install frappe-bench` Getting frappe_ldap $ git clone https://github.com/saurabh6790/frappe_ldap.git --depth 1 --origin upstream Cloning into 'frappe_ldap'... remote: Enumerating objects: 46, done. remote: Counting objects: 100% (46/46), done. remote: Compressing objects: 100% (38/38), done. remote: Total 46 (delta 3), reused 30 (delta 1), pack-reused 0 Unpacking objects: 100% (46/46), done. Installing frappe_ldap $ ./env/bin/pip install -q -U -e ./apps/frappe_ldap ERROR: Command errored out with exit status 1: command: /home/erpnext/erpnext/frappe-bench/env/bin/python3 -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-g3fqpa0o/python-ldap/setup.py'"'"'; __file__='"'"'/tmp/pip-install-g3fqpa0o/python-ldap/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' bdist_wheel -d /tmp/pip-wheel-uez_z1sd cwd: /tmp/pip-install-g3fqpa0o/python-ldap/ Complete output (82 lines): running bdist_wheel running build running build_py creating build creating build/lib.linux-x86_64-3.6 copying Lib/ldapurl.py -> build/lib.linux-x86_64-3.6 copying Lib/ldif.py -> build/lib.linux-x86_64-3.6 creating build/lib.linux-x86_64-3.6/ldap copying Lib/ldap/logger.py -> build/lib.linux-x86_64-3.6/ldap copying Lib/ldap/filter.py -> build/lib.linux-x86_64-3.6/ldap copying Lib/ldap/constants.py -> build/lib.linux-x86_64-3.6/ldap copying Lib/ldap/pkginfo.py -> build/lib.linux-x86_64-3.6/ldap copying Lib/ldap/functions.py -> build/lib.linux-x86_64-3.6/ldap copying Lib/ldap/cidict.py -> build/lib.linux-x86_64-3.6/ldap copying Lib/ldap/modlist.py -> build/lib.linux-x86_64-3.6/ldap copying Lib/ldap/async.py -> build/lib.linux-x86_64-3.6/ldap copying Lib/ldap/__init__.py -> build/lib.linux-x86_64-3.6/ldap copying Lib/ldap/ldapobject.py -> build/lib.linux-x86_64-3.6/ldap copying Lib/ldap/syncrepl.py -> build/lib.linux-x86_64-3.6/ldap copying Lib/ldap/asyncsearch.py -> build/lib.linux-x86_64-3.6/ldap copying Lib/ldap/sasl.py -> build/lib.linux-x86_64-3.6/ldap copying Lib/ldap/compat.py -> build/lib.linux-x86_64-3.6/ldap copying Lib/ldap/resiter.py -> build/lib.linux-x86_64-3.6/ldap copying Lib/ldap/dn.py -> build/lib.linux-x86_64-3.6/ldap creating build/lib.linux-x86_64-3.6/ldap/controls copying Lib/ldap/controls/__init__.py -> build/lib.linux-x86_64-3.6/ldap/controls copying Lib/ldap/controls/sss.py -> build/lib.linux-x86_64-3.6/ldap/controls copying Lib/ldap/controls/ppolicy.py -> build/lib.linux-x86_64-3.6/ldap/controls copying Lib/ldap/controls/readentry.py -> build/lib.linux-x86_64-3.6/ldap/controls copying Lib/ldap/controls/openldap.py -> build/lib.linux-x86_64-3.6/ldap/controls copying Lib/ldap/controls/pagedresults.py -> build/lib.linux-x86_64-3.6/ldap/controls copying Lib/ldap/controls/libldap.py -> build/lib.linux-x86_64-3.6/ldap/controls copying Lib/ldap/controls/deref.py -> build/lib.linux-x86_64-3.6/ldap/controls copying Lib/ldap/controls/pwdpolicy.py -> build/lib.linux-x86_64-3.6/ldap/controls copying Lib/ldap/controls/sessiontrack.py -> build/lib.linux-x86_64-3.6/ldap/controls copying Lib/ldap/controls/simple.py -> build/lib.linux-x86_64-3.6/ldap/controls copying Lib/ldap/controls/vlv.py -> build/lib.linux-x86_64-3.6/ldap/controls copying Lib/ldap/controls/psearch.py -> build/lib.linux-x86_64-3.6/ldap/controls creating build/lib.linux-x86_64-3.6/ldap/extop copying Lib/ldap/extop/__init__.py -> build/lib.linux-x86_64-3.6/ldap/extop copying Lib/ldap/extop/dds.py -> build/lib.linux-x86_64-3.6/ldap/extop copying Lib/ldap/extop/passwd.py -> build/lib.linux-x86_64-3.6/ldap/extop creating build/lib.linux-x86_64-3.6/ldap/schema copying Lib/ldap/schema/__init__.py -> build/lib.linux-x86_64-3.6/ldap/schema copying Lib/ldap/schema/tokenizer.py -> build/lib.linux-x86_64-3.6/ldap/schema copying Lib/ldap/schema/models.py -> build/lib.linux-x86_64-3.6/ldap/schema copying Lib/ldap/schema/subentry.py -> build/lib.linux-x86_64-3.6/ldap/schema creating build/lib.linux-x86_64-3.6/slapdtest copying Lib/slapdtest/__init__.py -> build/lib.linux-x86_64-3.6/slapdtest copying Lib/slapdtest/_slapdtest.py -> build/lib.linux-x86_64-3.6/slapdtest running egg_info writing Lib/python_ldap.egg-info/PKG-INFO writing dependency_links to Lib/python_ldap.egg-info/dependency_links.txt writing requirements to Lib/python_ldap.egg-info/requires.txt writing top-level names to Lib/python_ldap.egg-info/top_level.txt reading manifest file 'Lib/python_ldap.egg-info/SOURCES.txt' reading manifest template 'MANIFEST.in' no previously-included directories found matching 'Doc/.build' writing manifest file 'Lib/python_ldap.egg-info/SOURCES.txt' creating build/lib.linux-x86_64-3.6/slapdtest/certs copying Lib/slapdtest/certs/README -> build/lib.linux-x86_64-3.6/slapdtest/certs copying Lib/slapdtest/certs/ca.conf -> build/lib.linux-x86_64-3.6/slapdtest/certs copying Lib/slapdtest/certs/ca.pem -> build/lib.linux-x86_64-3.6/slapdtest/certs copying Lib/slapdtest/certs/client.conf -> build/lib.linux-x86_64-3.6/slapdtest/certs copying Lib/slapdtest/certs/client.key -> build/lib.linux-x86_64-3.6/slapdtest/certs copying Lib/slapdtest/certs/client.pem -> build/lib.linux-x86_64-3.6/slapdtest/certs copying Lib/slapdtest/certs/gencerts.sh -> build/lib.linux-x86_64-3.6/slapdtest/certs copying Lib/slapdtest/certs/gennssdb.sh -> build/lib.linux-x86_64-3.6/slapdtest/certs copying Lib/slapdtest/certs/server.conf -> build/lib.linux-x86_64-3.6/slapdtest/certs copying Lib/slapdtest/certs/server.key -> build/lib.linux-x86_64-3.6/slapdtest/certs copying Lib/slapdtest/certs/server.pem -> build/lib.linux-x86_64-3.6/slapdtest/certs running build_ext building '_ldap' extension creating build/temp.linux-x86_64-3.6 creating build/temp.linux-x86_64-3.6/Modules x86_64-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -g -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -DHAVE_SASL -DHAVE_TLS -DHAVE_LIBLDAP_R -DHAVE_LIBLDAP_R -DLDAPMODULE_VERSION=3.3.1 -DLDAPMODULE_AUTHOR=python-ldap project -DLDAPMODULE_LICENSE=Python style -IModules -I/usr/include/python3.6m -I/home/erpnext/erpnext/frappe-bench/env/include/python3.6m -c Modules/LDAPObject.c -o build/temp.linux-x86_64-3.6/Modules/LDAPObject.o In file included from Modules/LDAPObject.c:3:0: Modules/common.h:9:10: fatal error: Python.h: No such file or directory #include "Python.h" ^~~~~~~~~~ compilation terminated. error: command 'x86_64-linux-gnu-gcc' failed with exit status 1 ---------------------------------------- ERROR: Failed building wheel for python-ldap ERROR: Command errored out with exit status 1: command: /home/erpnext/erpnext/frappe-bench/env/bin/python3 -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-g3fqpa0o/python-ldap/setup.py'"'"'; __file__='"'"'/tmp/pip-install-g3fqpa0o/python-ldap/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record /tmp/pip-record-_8uj5066/install-record.txt --single-version-externally-managed --compile --install-headers /home/erpnext/erpnext/frappe-bench/env/include/site/python3.6/python-ldap cwd: /tmp/pip-install-g3fqpa0o/python-ldap/ Complete output (82 lines): running install running build running build_py creating build creating build/lib.linux-x86_64-3.6 copying Lib/ldapurl.py -> build/lib.linux-x86_64-3.6 copying Lib/ldif.py -> build/lib.linux-x86_64-3.6 creating build/lib.linux-x86_64-3.6/ldap copying Lib/ldap/logger.py -> build/lib.linux-x86_64-3.6/ldap copying Lib/ldap/filter.py -> build/lib.linux-x86_64-3.6/ldap copying Lib/ldap/constants.py -> build/lib.linux-x86_64-3.6/ldap copying Lib/ldap/pkginfo.py -> build/lib.linux-x86_64-3.6/ldap copying Lib/ldap/functions.py -> build/lib.linux-x86_64-3.6/ldap copying Lib/ldap/cidict.py -> build/lib.linux-x86_64-3.6/ldap copying Lib/ldap/modlist.py -> build/lib.linux-x86_64-3.6/ldap copying Lib/ldap/async.py -> build/lib.linux-x86_64-3.6/ldap copying Lib/ldap/__init__.py -> build/lib.linux-x86_64-3.6/ldap copying Lib/ldap/ldapobject.py -> build/lib.linux-x86_64-3.6/ldap copying Lib/ldap/syncrepl.py -> build/lib.linux-x86_64-3.6/ldap copying Lib/ldap/asyncsearch.py -> build/lib.linux-x86_64-3.6/ldap copying Lib/ldap/sasl.py -> build/lib.linux-x86_64-3.6/ldap copying Lib/ldap/compat.py -> build/lib.linux-x86_64-3.6/ldap copying Lib/ldap/resiter.py -> build/lib.linux-x86_64-3.6/ldap copying Lib/ldap/dn.py -> build/lib.linux-x86_64-3.6/ldap creating build/lib.linux-x86_64-3.6/ldap/controls copying Lib/ldap/controls/__init__.py -> build/lib.linux-x86_64-3.6/ldap/controls copying Lib/ldap/controls/sss.py -> build/lib.linux-x86_64-3.6/ldap/controls copying Lib/ldap/controls/ppolicy.py -> build/lib.linux-x86_64-3.6/ldap/controls copying Lib/ldap/controls/readentry.py -> build/lib.linux-x86_64-3.6/ldap/controls copying Lib/ldap/controls/openldap.py -> build/lib.linux-x86_64-3.6/ldap/controls copying Lib/ldap/controls/pagedresults.py -> build/lib.linux-x86_64-3.6/ldap/controls copying Lib/ldap/controls/libldap.py -> build/lib.linux-x86_64-3.6/ldap/controls copying Lib/ldap/controls/deref.py -> build/lib.linux-x86_64-3.6/ldap/controls copying Lib/ldap/controls/pwdpolicy.py -> build/lib.linux-x86_64-3.6/ldap/controls copying Lib/ldap/controls/sessiontrack.py -> build/lib.linux-x86_64-3.6/ldap/controls copying Lib/ldap/controls/simple.py -> build/lib.linux-x86_64-3.6/ldap/controls copying Lib/ldap/controls/vlv.py -> build/lib.linux-x86_64-3.6/ldap/controls copying Lib/ldap/controls/psearch.py -> build/lib.linux-x86_64-3.6/ldap/controls creating build/lib.linux-x86_64-3.6/ldap/extop copying Lib/ldap/extop/__init__.py -> build/lib.linux-x86_64-3.6/ldap/extop copying Lib/ldap/extop/dds.py -> build/lib.linux-x86_64-3.6/ldap/extop copying Lib/ldap/extop/passwd.py -> build/lib.linux-x86_64-3.6/ldap/extop creating build/lib.linux-x86_64-3.6/ldap/schema copying Lib/ldap/schema/__init__.py -> build/lib.linux-x86_64-3.6/ldap/schema copying Lib/ldap/schema/tokenizer.py -> build/lib.linux-x86_64-3.6/ldap/schema copying Lib/ldap/schema/models.py -> build/lib.linux-x86_64-3.6/ldap/schema copying Lib/ldap/schema/subentry.py -> build/lib.linux-x86_64-3.6/ldap/schema creating build/lib.linux-x86_64-3.6/slapdtest copying Lib/slapdtest/__init__.py -> build/lib.linux-x86_64-3.6/slapdtest copying Lib/slapdtest/_slapdtest.py -> build/lib.linux-x86_64-3.6/slapdtest running egg_info writing Lib/python_ldap.egg-info/PKG-INFO writing dependency_links to Lib/python_ldap.egg-info/dependency_links.txt writing requirements to Lib/python_ldap.egg-info/requires.txt writing top-level names to Lib/python_ldap.egg-info/top_level.txt reading manifest file 'Lib/python_ldap.egg-info/SOURCES.txt' reading manifest template 'MANIFEST.in' no previously-included directories found matching 'Doc/.build' writing manifest file 'Lib/python_ldap.egg-info/SOURCES.txt' creating build/lib.linux-x86_64-3.6/slapdtest/certs copying Lib/slapdtest/certs/README -> build/lib.linux-x86_64-3.6/slapdtest/certs copying Lib/slapdtest/certs/ca.conf -> build/lib.linux-x86_64-3.6/slapdtest/certs copying Lib/slapdtest/certs/ca.pem -> build/lib.linux-x86_64-3.6/slapdtest/certs copying Lib/slapdtest/certs/client.conf -> build/lib.linux-x86_64-3.6/slapdtest/certs copying Lib/slapdtest/certs/client.key -> build/lib.linux-x86_64-3.6/slapdtest/certs copying Lib/slapdtest/certs/client.pem -> build/lib.linux-x86_64-3.6/slapdtest/certs copying Lib/slapdtest/certs/gencerts.sh -> build/lib.linux-x86_64-3.6/slapdtest/certs copying Lib/slapdtest/certs/gennssdb.sh -> build/lib.linux-x86_64-3.6/slapdtest/certs copying Lib/slapdtest/certs/server.conf -> build/lib.linux-x86_64-3.6/slapdtest/certs copying Lib/slapdtest/certs/server.key -> build/lib.linux-x86_64-3.6/slapdtest/certs copying Lib/slapdtest/certs/server.pem -> build/lib.linux-x86_64-3.6/slapdtest/certs running build_ext building '_ldap' extension creating build/temp.linux-x86_64-3.6 creating build/temp.linux-x86_64-3.6/Modules x86_64-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -g -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -DHAVE_SASL -DHAVE_TLS -DHAVE_LIBLDAP_R -DHAVE_LIBLDAP_R -DLDAPMODULE_VERSION=3.3.1 -DLDAPMODULE_AUTHOR=python-ldap project -DLDAPMODULE_LICENSE=Python style -IModules -I/usr/include/python3.6m -I/home/erpnext/erpnext/frappe-bench/env/include/python3.6m -c Modules/LDAPObject.c -o build/temp.linux-x86_64-3.6/Modules/LDAPObject.o In file included from Modules/LDAPObject.c:3:0: Modules/common.h:9:10: fatal error: Python.h: No such file or directory #include "Python.h" ^~~~~~~~~~ compilation terminated. error: command 'x86_64-linux-gnu-gcc' failed with exit status 1 ---------------------------------------- ERROR: Command errored out with exit status 1: /home/erpnext/erpnext/frappe-bench/env/bin/python3 -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-g3fqpa0o/python-ldap/setup.py'"'"'; __file__='"'"'/tmp/pip-install-g3fqpa0o/python-ldap/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record /tmp/pip-record-_8uj5066/install-record.txt --single-version-externally-managed --compile --install-headers /home/erpnext/erpnext/frappe-bench/env/include/site/python3.6/python-ldap Check the logs for full command output. $ bench build --app frappe_ldap WARN: bench is installed in editable mode! This is not the recommended mode of installation for production. Instead, install the package from PyPI with: `pip install frappe-bench` Traceback (most recent call last): File "/usr/lib/python3.6/runpy.py", line 193, in _run_module_as_main "__main__", mod_spec) File "/usr/lib/python3.6/runpy.py", line 85, in _run_code exec(code, run_globals) File "/home/erpnext/erpnext/frappe-bench/apps/frappe/frappe/utils/bench_helper.py", line 99, in <module> main() File "/home/erpnext/erpnext/frappe-bench/apps/frappe/frappe/utils/bench_helper.py", line 18, in main click.Group(commands=commands)(prog_name='bench') File "/home/erpnext/erpnext/frappe-bench/env/lib/python3.6/site-packages/click/core.py", line 764, in __call__ return self.main(*args, **kwargs) File "/home/erpnext/erpnext/frappe-bench/env/lib/python3.6/site-packages/click/core.py", line 717, in main rv = self.invoke(ctx) File "/home/erpnext/erpnext/frappe-bench/env/lib/python3.6/site-packages/click/core.py", line 1137, in invoke return _process_result(sub_ctx.command.invoke(sub_ctx)) File "/home/erpnext/erpnext/frappe-bench/env/lib/python3.6/site-packages/click/core.py", line 1137, in invoke return _process_result(sub_ctx.command.invoke(sub_ctx)) File "/home/erpnext/erpnext/frappe-bench/env/lib/python3.6/site-packages/click/core.py", line 956, in invoke return ctx.invoke(self.callback, **ctx.params) File "/home/erpnext/erpnext/frappe-bench/env/lib/python3.6/site-packages/click/core.py", line 555, in invoke return callback(*args, **kwargs) File "/home/erpnext/erpnext/frappe-bench/apps/frappe/frappe/commands/utils.py", line 26, in build frappe.init('') File "/home/erpnext/erpnext/frappe-bench/apps/frappe/frappe/__init__.py", line 185, in init setup_module_map() File "/home/erpnext/erpnext/frappe-bench/apps/frappe/frappe/__init__.py", line 1027, in setup_module_map for module in get_module_list(app): File "/home/erpnext/erpnext/frappe-bench/apps/frappe/frappe/__init__.py", line 896, in get_module_list return get_file_items(os.path.join(os.path.dirname(get_module(app_name).__file__), "modules.txt")) File "/home/erpnext/erpnext/frappe-bench/apps/frappe/frappe/__init__.py", line 854, in get_module return importlib.import_module(modulename) File "/home/erpnext/erpnext/frappe-bench/env/lib/python3.6/importlib/__init__.py", line 126, in import_module return _bootstrap._gcd_import(name[level:], package, level) File "<frozen importlib._bootstrap>", line 994, in _gcd_import File "<frozen importlib._bootstrap>", line 971, in _find_and_load File "<frozen importlib._bootstrap>", line 953, in _find_and_load_unlocked ModuleNotFoundError: No module named 'frappe_ldap' erpnext@ubuntu:~/erpnext/frappe-bench$ bench update WARN: bench is installed in editable mode! This is not the recommended mode of installation for production. Instead, install the package from PyPI with: `pip install frappe-bench` Backing up sites... erpnext@ubuntu:~/erpnext/frappe-bench$ bench setup requirements WARN: bench is installed in editable mode! This is not the recommended mode of installation for production. Instead, install the package from PyPI with: `pip install frappe-bench` Installing applications... $ ./env/bin/pip install -q -U pip Installing frappe $ ./env/bin/pip install -q -U -e ./apps/frappe $ yarn install yarn install v1.22.5 [1/4] Resolving packages... success Already up-to-date. $ yarn run snyk-protect yarn run v1.22.5 $ snyk protect Successfully applied Snyk patches Done in 17.02s. Done in 17.84s. Installing erpnext $ ./env/bin/pip install -q -U -e ./apps/erpnext $ yarn install yarn install v1.22.5 [1/4] Resolving packages... success Already up-to-date. $ yarn run snyk-protect yarn run v1.22.5 $ snyk protect Successfully applied Snyk patches Done in 7.70s. Done in 8.22s. Installing frappe_ldap $ ./env/bin/pip install -q -U -e ./apps/frappe_ldap ERROR: Command errored out with exit status 1: command: /home/erpnext/erpnext/frappe-bench/env/bin/python3 -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-cparue6_/python-ldap/setup.py'"'"'; __file__='"'"'/tmp/pip-install-cparue6_/python-ldap/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' bdist_wheel -d /tmp/pip-wheel-l5nq0zl3 cwd: /tmp/pip-install-cparue6_/python-ldap/ Complete output (82 lines): running bdist_wheel running build running build_py creating build creating build/lib.linux-x86_64-3.6 copying Lib/ldapurl.py -> build/lib.linux-x86_64-3.6 copying Lib/ldif.py -> build/lib.linux-x86_64-3.6 creating build/lib.linux-x86_64-3.6/ldap copying Lib/ldap/logger.py -> build/lib.linux-x86_64-3.6/ldap copying Lib/ldap/filter.py -> build/lib.linux-x86_64-3.6/ldap copying Lib/ldap/constants.py -> build/lib.linux-x86_64-3.6/ldap copying Lib/ldap/pkginfo.py -> build/lib.linux-x86_64-3.6/ldap copying Lib/ldap/functions.py -> build/lib.linux-x86_64-3.6/ldap copying Lib/ldap/cidict.py -> build/lib.linux-x86_64-3.6/ldap copying Lib/ldap/modlist.py -> build/lib.linux-x86_64-3.6/ldap copying Lib/ldap/async.py -> build/lib.linux-x86_64-3.6/ldap copying Lib/ldap/__init__.py -> build/lib.linux-x86_64-3.6/ldap copying Lib/ldap/ldapobject.py -> build/lib.linux-x86_64-3.6/ldap copying Lib/ldap/syncrepl.py -> build/lib.linux-x86_64-3.6/ldap copying Lib/ldap/asyncsearch.py -> build/lib.linux-x86_64-3.6/ldap copying Lib/ldap/sasl.py -> build/lib.linux-x86_64-3.6/ldap copying Lib/ldap/compat.py -> build/lib.linux-x86_64-3.6/ldap copying Lib/ldap/resiter.py -> build/lib.linux-x86_64-3.6/ldap copying Lib/ldap/dn.py -> build/lib.linux-x86_64-3.6/ldap creating build/lib.linux-x86_64-3.6/ldap/controls copying Lib/ldap/controls/__init__.py -> build/lib.linux-x86_64-3.6/ldap/controls copying Lib/ldap/controls/sss.py -> build/lib.linux-x86_64-3.6/ldap/controls copying Lib/ldap/controls/ppolicy.py -> build/lib.linux-x86_64-3.6/ldap/controls copying Lib/ldap/controls/readentry.py -> build/lib.linux-x86_64-3.6/ldap/controls copying Lib/ldap/controls/openldap.py -> build/lib.linux-x86_64-3.6/ldap/controls copying Lib/ldap/controls/pagedresults.py -> build/lib.linux-x86_64-3.6/ldap/controls copying Lib/ldap/controls/libldap.py -> build/lib.linux-x86_64-3.6/ldap/controls copying Lib/ldap/controls/deref.py -> build/lib.linux-x86_64-3.6/ldap/controls copying Lib/ldap/controls/pwdpolicy.py -> build/lib.linux-x86_64-3.6/ldap/controls copying Lib/ldap/controls/sessiontrack.py -> build/lib.linux-x86_64-3.6/ldap/controls copying Lib/ldap/controls/simple.py -> build/lib.linux-x86_64-3.6/ldap/controls copying Lib/ldap/controls/vlv.py -> build/lib.linux-x86_64-3.6/ldap/controls copying Lib/ldap/controls/psearch.py -> build/lib.linux-x86_64-3.6/ldap/controls creating build/lib.linux-x86_64-3.6/ldap/extop copying Lib/ldap/extop/__init__.py -> build/lib.linux-x86_64-3.6/ldap/extop copying Lib/ldap/extop/dds.py -> build/lib.linux-x86_64-3.6/ldap/extop copying Lib/ldap/extop/passwd.py -> build/lib.linux-x86_64-3.6/ldap/extop creating build/lib.linux-x86_64-3.6/ldap/schema copying Lib/ldap/schema/__init__.py -> build/lib.linux-x86_64-3.6/ldap/schema copying Lib/ldap/schema/tokenizer.py -> build/lib.linux-x86_64-3.6/ldap/schema copying Lib/ldap/schema/models.py -> build/lib.linux-x86_64-3.6/ldap/schema copying Lib/ldap/schema/subentry.py -> build/lib.linux-x86_64-3.6/ldap/schema creating build/lib.linux-x86_64-3.6/slapdtest copying Lib/slapdtest/__init__.py -> build/lib.linux-x86_64-3.6/slapdtest copying Lib/slapdtest/_slapdtest.py -> build/lib.linux-x86_64-3.6/slapdtest running egg_info writing Lib/python_ldap.egg-info/PKG-INFO writing dependency_links to Lib/python_ldap.egg-info/dependency_links.txt writing requirements to Lib/python_ldap.egg-info/requires.txt writing top-level names to Lib/python_ldap.egg-info/top_level.txt reading manifest file 'Lib/python_ldap.egg-info/SOURCES.txt' reading manifest template 'MANIFEST.in' no previously-included directories found matching 'Doc/.build' writing manifest file 'Lib/python_ldap.egg-info/SOURCES.txt' creating build/lib.linux-x86_64-3.6/slapdtest/certs copying Lib/slapdtest/certs/README -> build/lib.linux-x86_64-3.6/slapdtest/certs copying Lib/slapdtest/certs/ca.conf -> build/lib.linux-x86_64-3.6/slapdtest/certs copying Lib/slapdtest/certs/ca.pem -> build/lib.linux-x86_64-3.6/slapdtest/certs copying Lib/slapdtest/certs/client.conf -> build/lib.linux-x86_64-3.6/slapdtest/certs copying Lib/slapdtest/certs/client.key -> build/lib.linux-x86_64-3.6/slapdtest/certs copying Lib/slapdtest/certs/client.pem -> build/lib.linux-x86_64-3.6/slapdtest/certs copying Lib/slapdtest/certs/gencerts.sh -> build/lib.linux-x86_64-3.6/slapdtest/certs copying Lib/slapdtest/certs/gennssdb.sh -> build/lib.linux-x86_64-3.6/slapdtest/certs copying Lib/slapdtest/certs/server.conf -> build/lib.linux-x86_64-3.6/slapdtest/certs copying Lib/slapdtest/certs/server.key -> build/lib.linux-x86_64-3.6/slapdtest/certs copying Lib/slapdtest/certs/server.pem -> build/lib.linux-x86_64-3.6/slapdtest/certs running build_ext building '_ldap' extension creating build/temp.linux-x86_64-3.6 creating build/temp.linux-x86_64-3.6/Modules x86_64-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -g -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -DHAVE_SASL -DHAVE_TLS -DHAVE_LIBLDAP_R -DHAVE_LIBLDAP_R -DLDAPMODULE_VERSION=3.3.1 -DLDAPMODULE_AUTHOR=python-ldap project -DLDAPMODULE_LICENSE=Python style -IModules -I/usr/include/python3.6m -I/home/erpnext/erpnext/frappe-bench/env/include/python3.6m -c Modules/LDAPObject.c -o build/temp.linux-x86_64-3.6/Modules/LDAPObject.o In file included from Modules/LDAPObject.c:3:0: Modules/common.h:9:10: fatal error: Python.h: No such file or directory #include "Python.h" ^~~~~~~~~~ compilation terminated. error: command 'x86_64-linux-gnu-gcc' failed with exit status 1 ---------------------------------------- ERROR: Failed building wheel for python-ldap ERROR: Command errored out with exit status 1: command: /home/erpnext/erpnext/frappe-bench/env/bin/python3 -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-cparue6_/python-ldap/setup.py'"'"'; __file__='"'"'/tmp/pip-install-cparue6_/python-ldap/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record /tmp/pip-record-6788wur1/install-record.txt --single-version-externally-managed --compile --install-headers /home/erpnext/erpnext/frappe-bench/env/include/site/python3.6/python-ldap cwd: /tmp/pip-install-cparue6_/python-ldap/ Complete output (82 lines): running install running build running build_py creating build creating build/lib.linux-x86_64-3.6 copying Lib/ldapurl.py -> build/lib.linux-x86_64-3.6 copying Lib/ldif.py -> build/lib.linux-x86_64-3.6 creating build/lib.linux-x86_64-3.6/ldap copying Lib/ldap/logger.py -> build/lib.linux-x86_64-3.6/ldap copying Lib/ldap/filter.py -> build/lib.linux-x86_64-3.6/ldap copying Lib/ldap/constants.py -> build/lib.linux-x86_64-3.6/ldap copying Lib/ldap/pkginfo.py -> build/lib.linux-x86_64-3.6/ldap copying Lib/ldap/functions.py -> build/lib.linux-x86_64-3.6/ldap copying Lib/ldap/cidict.py -> build/lib.linux-x86_64-3.6/ldap copying Lib/ldap/modlist.py -> build/lib.linux-x86_64-3.6/ldap copying Lib/ldap/async.py -> build/lib.linux-x86_64-3.6/ldap copying Lib/ldap/__init__.py -> build/lib.linux-x86_64-3.6/ldap copying Lib/ldap/ldapobject.py -> build/lib.linux-x86_64-3.6/ldap copying Lib/ldap/syncrepl.py -> build/lib.linux-x86_64-3.6/ldap copying Lib/ldap/asyncsearch.py -> build/lib.linux-x86_64-3.6/ldap copying Lib/ldap/sasl.py -> build/lib.linux-x86_64-3.6/ldap copying Lib/ldap/compat.py -> build/lib.linux-x86_64-3.6/ldap copying Lib/ldap/resiter.py -> build/lib.linux-x86_64-3.6/ldap copying Lib/ldap/dn.py -> build/lib.linux-x86_64-3.6/ldap creating build/lib.linux-x86_64-3.6/ldap/controls copying Lib/ldap/controls/__init__.py -> build/lib.linux-x86_64-3.6/ldap/controls copying Lib/ldap/controls/sss.py -> build/lib.linux-x86_64-3.6/ldap/controls copying Lib/ldap/controls/ppolicy.py -> build/lib.linux-x86_64-3.6/ldap/controls copying Lib/ldap/controls/readentry.py -> build/lib.linux-x86_64-3.6/ldap/controls copying Lib/ldap/controls/openldap.py -> build/lib.linux-x86_64-3.6/ldap/controls copying Lib/ldap/controls/pagedresults.py -> build/lib.linux-x86_64-3.6/ldap/controls copying Lib/ldap/controls/libldap.py -> build/lib.linux-x86_64-3.6/ldap/controls copying Lib/ldap/controls/deref.py -> build/lib.linux-x86_64-3.6/ldap/controls copying Lib/ldap/controls/pwdpolicy.py -> build/lib.linux-x86_64-3.6/ldap/controls copying Lib/ldap/controls/sessiontrack.py -> build/lib.linux-x86_64-3.6/ldap/controls copying Lib/ldap/controls/simple.py -> build/lib.linux-x86_64-3.6/ldap/controls copying Lib/ldap/controls/vlv.py -> build/lib.linux-x86_64-3.6/ldap/controls copying Lib/ldap/controls/psearch.py -> build/lib.linux-x86_64-3.6/ldap/controls creating build/lib.linux-x86_64-3.6/ldap/extop copying Lib/ldap/extop/__init__.py -> build/lib.linux-x86_64-3.6/ldap/extop copying Lib/ldap/extop/dds.py -> build/lib.linux-x86_64-3.6/ldap/extop copying Lib/ldap/extop/passwd.py -> build/lib.linux-x86_64-3.6/ldap/extop creating build/lib.linux-x86_64-3.6/ldap/schema copying Lib/ldap/schema/__init__.py -> build/lib.linux-x86_64-3.6/ldap/schema copying Lib/ldap/schema/tokenizer.py -> build/lib.linux-x86_64-3.6/ldap/schema copying Lib/ldap/schema/models.py -> build/lib.linux-x86_64-3.6/ldap/schema copying Lib/ldap/schema/subentry.py -> build/lib.linux-x86_64-3.6/ldap/schema creating build/lib.linux-x86_64-3.6/slapdtest copying Lib/slapdtest/__init__.py -> build/lib.linux-x86_64-3.6/slapdtest copying Lib/slapdtest/_slapdtest.py -> build/lib.linux-x86_64-3.6/slapdtest running egg_info writing Lib/python_ldap.egg-info/PKG-INFO writing dependency_links to Lib/python_ldap.egg-info/dependency_links.txt writing requirements to Lib/python_ldap.egg-info/requires.txt writing top-level names to Lib/python_ldap.egg-info/top_level.txt reading manifest file 'Lib/python_ldap.egg-info/SOURCES.txt' reading manifest template 'MANIFEST.in' no previously-included directories found matching 'Doc/.build' writing manifest file 'Lib/python_ldap.egg-info/SOURCES.txt' creating build/lib.linux-x86_64-3.6/slapdtest/certs copying Lib/slapdtest/certs/README -> build/lib.linux-x86_64-3.6/slapdtest/certs copying Lib/slapdtest/certs/ca.conf -> build/lib.linux-x86_64-3.6/slapdtest/certs copying Lib/slapdtest/certs/ca.pem -> build/lib.linux-x86_64-3.6/slapdtest/certs copying Lib/slapdtest/certs/client.conf -> build/lib.linux-x86_64-3.6/slapdtest/certs copying Lib/slapdtest/certs/client.key -> build/lib.linux-x86_64-3.6/slapdtest/certs copying Lib/slapdtest/certs/client.pem -> build/lib.linux-x86_64-3.6/slapdtest/certs copying Lib/slapdtest/certs/gencerts.sh -> build/lib.linux-x86_64-3.6/slapdtest/certs copying Lib/slapdtest/certs/gennssdb.sh -> build/lib.linux-x86_64-3.6/slapdtest/certs copying Lib/slapdtest/certs/server.conf -> build/lib.linux-x86_64-3.6/slapdtest/certs copying Lib/slapdtest/certs/server.key -> build/lib.linux-x86_64-3.6/slapdtest/certs copying Lib/slapdtest/certs/server.pem -> build/lib.linux-x86_64-3.6/slapdtest/certs running build_ext building '_ldap' extension creating build/temp.linux-x86_64-3.6 creating build/temp.linux-x86_64-3.6/Modules x86_64-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -g -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -DHAVE_SASL -DHAVE_TLS -DHAVE_LIBLDAP_R -DHAVE_LIBLDAP_R -DLDAPMODULE_VERSION=3.3.1 -DLDAPMODULE_AUTHOR=python-ldap project -DLDAPMODULE_LICENSE=Python style -IModules -I/usr/include/python3.6m -I/home/erpnext/erpnext/frappe-bench/env/include/python3.6m -c Modules/LDAPObject.c -o build/temp.linux-x86_64-3.6/Modules/LDAPObject.o In file included from Modules/LDAPObject.c:3:0: Modules/common.h:9:10: fatal error: Python.h: No such file or directory #include "Python.h" ^~~~~~~~~~ compilation terminated. error: command 'x86_64-linux-gnu-gcc' failed with exit status 1 ---------------------------------------- ERROR: Command errored out with exit status 1: /home/erpnext/erpnext/frappe-bench/env/bin/python3 -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-cparue6_/python-ldap/setup.py'"'"'; __file__='"'"'/tmp/pip-install-cparue6_/python-ldap/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record /tmp/pip-record-6788wur1/install-record.txt --single-version-externally-managed --compile --install-headers /home/erpnext/erpnext/frappe-bench/env/include/site/python3.6/python-ldap Check the logs for full command output. erpnext@ubuntu:~/erpnext/frappe-bench$
Do you know, that recent versions of Frappe/ERPNext have LDAP support built in?
@MarekPikula yes i know but i need this old one for some customized work within it