在opensuse上构建Python kerberos扩展失败

在opensuse上构建Python kerberos扩展失败,python,gcc,ansible,kerberos,opensuse,Python,Gcc,Ansible,Kerberos,Opensuse,我试图在docker容器中的opensuse 13.2上构建kerberos。我已经安装了所需的库: bash-4.2# cat /etc/os-release NAME=openSUSE VERSION="13.2 (Harlequin)" VERSION_ID="13.2" PRETTY_NAME="openSUSE 13.2 (Harlequin) (x86_64)" ID=opensuse ANSI_COLOR="0;32" CPE_NAME="cpe:/o:opensuse:opens

我试图在docker容器中的opensuse 13.2上构建kerberos。我已经安装了所需的库:

bash-4.2# cat /etc/os-release
NAME=openSUSE
VERSION="13.2 (Harlequin)"
VERSION_ID="13.2"
PRETTY_NAME="openSUSE 13.2 (Harlequin) (x86_64)"
ID=opensuse
ANSI_COLOR="0;32"
CPE_NAME="cpe:/o:opensuse:opensuse:13.2"
BUG_REPORT_URL="https://bugs.opensuse.org"
HOME_URL="https://opensuse.org/"
ID_LIKE="suse"
bash-4.2#

bash-4.2# zypper search --installed krb5
S | Name       | Summary                                     | Type
--+------------+---------------------------------------------+--------
i | krb5       | MIT Kerberos5 Implementation--Libraries     | package
i | krb5-devel | MIT Kerberos5 - Include Files and Libraries | package


bash-4.2# pip install kerberos
Downloading/unpacking kerberos
  Downloading kerberos-1.2.3.tar.gz
  Running setup.py (path:/tmp/pip_build_root/kerberos/setup.py) egg_info for package kerberos

Installing collected packages: kerberos
  Running setup.py install for kerberos
    building 'kerberos' extension
    gcc -pthread -fno-strict-aliasing -fmessage-length=0 -grecord-gcc-switches -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables -g -DNDEBUG -fmessage-length=0 -grecord-gcc-switches -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables -g -DOPENSSL_LOAD_CONF -fPIC -I/usr/include/python2.7 -c src/base64.c -o build/temp.linux-x86_64-2.7/src/base64.o sh: krb5-config: command not found
    gcc: error: sh:: No such file or directory
    gcc: error: krb5-config:: No such file or directory
    gcc: error: command: No such file or directory
    gcc: error: not: No such file or directory
    gcc: error: found: No such file or directory
    error: command 'gcc' failed with exit status 1
    Complete output from command /usr/bin/python -c "import setuptools, tokenize;__file__='/tmp/pip_build_root/kerberos/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /tmp/pip-8u80ki-record/install-record.txt --single-version-externally-managed --compile:
    running install

running build

running build_ext

building 'kerberos' extension

creating build

creating build/temp.linux-x86_64-2.7

creating build/temp.linux-x86_64-2.7/src

gcc -pthread -fno-strict-aliasing -fmessage-length=0 -grecord-gcc-switches -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables -g -DNDEBUG -fmessage-length=0 -grecord-gcc-switches -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables -g -DOPENSSL_LOAD_CONF -fPIC -I/usr/include/python2.7 -c src/base64.c -o build/temp.linux-x86_64-2.7/src/base64.o sh: krb5-config: command not found

gcc: error: sh:: No such file or directory

gcc: error: krb5-config:: No such file or directory

gcc: error: command: No such file or directory

gcc: error: not: No such file or directory

gcc: error: found: No such file or directory

error: command 'gcc' failed with exit status 1

----------------------------------------
Cleaning up...
Command /usr/bin/python -c "import setuptools, tokenize;__file__='/tmp/pip_build_root/kerberos/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /tmp/pip-8u80ki-record/install-record.txt --single-version-externally-managed --compile failed with error code 1 in /tmp/pip_build_root/kerberos
Storing debug log for failure in /root/.pip/pip.log
我尝试了各种方法,比如查找krb5 config或其他krb5库。但是,在openSUSE上,一切都在krb5-devel包中。你有什么建议吗


我的核心意图是建立在openSUSE上,Python kerberos包似乎很难编译,这至少是一个临时的解决方法

pip install kerberos==1.1.1

较新版本似乎缺少所需的头文件,因此可能存在一些打包问题。

试试1.2.4;不确定1.2.3中的标题出了什么问题,但它们在1.2.4中出现了。

是否返回了任何东西?'bash-4.2#rpm-ql-krb5-devel | grep-krb5-config/usr/lib/mit/bin/krb5-config/usr/share/man/man1/krb5-config.1.gz'路径中的目录是
/usr/lib/mit/bin吗?不是。我现在加上去了。谢谢但是,不能继续建造gcc-pthread-fno严格别名-fmessage length=0-grecord gcc switches-O2-Wall-D_FORTIFY_SOURCE=2-fstack protector-funwind tables-fasynchronous diswind tables-g-DNDEBUG-fmessage length=0-grecord gcc switches-O2-Wall-D_FORTIFY_SOURCE=2-fstack protector-funwind tables-fasynchronous unwind tables-g-DOPENSSL_LOAD_CONF-fPIC-I/usr/include/python2.7-c src/base64.c-o build/temp.linux-x86_64-2.7/src/base64.o src/base64.c:17:20:致命错误:base64.h:没有这样的文件或目录#包括“base64.h”^编译终止`src/kerberos.c:19:27:致命错误:kerberosbasic.h:没有这样的文件或目录#包括“kerberosbasic.h”^编译已终止。@praving5 kerberos-1.1.2中缺少该头,但kerberos-1.1.1中存在该头,即我可能混合了版本。太棒了!我终于明白了。即使在1.2.3版本中也缺少标题。1.1.1工作起来很有魅力。