我正在尝试通过pip安装GSSAPI模块,但是我收到了这个错误,不知道如何解决。
找不到主GSSAPI共享库。请尝试设置GSSAPI_MAIN_LIB或将ENABLE_SUPPORT_DETECTION设置为“false”
我需要在Python 2.6上使其能够用于LDAP3身份验证。
我正在尝试通过pip安装GSSAPI模块,但是我收到了这个错误,不知道如何解决。
找不到主GSSAPI共享库。请尝试设置GSSAPI_MAIN_LIB或将ENABLE_SUPPORT_DETECTION设置为“false”
我需要在Python 2.6上使其能够用于LDAP3身份验证。
摘要,给急于求成的人
$ sudo ln -s /usr/bin/krb5-config.mit /usr/bin/krb5-config
$ sudo ln -s /usr/lib/x86_64-linux-gnu/libgssapi_krb5.so.2 /usr/lib/libgssapi_krb5.so
$ sudo apt-get install python-pip libkrb5-dev
$ sudo pip install gssapi
gssapi
的setup.py
使用krb5-config
命令查找要链接的GSSAPI库(见这里)。由于我的系统使用Heimdal而不是MIT Kerberos进行安装,可执行命令已被重命名为krb5-config.mit
,因此setup.py
无法找到它。
$ krb5-config --libs gssapi # doesn't work
bash: krb5-config: command not found
我创建了一个符号链接,以使安装工作:
$ sudo ln -s /usr/bin/krb5-config.mit /usr/bin/krb5-config
$ krb5-config --libs gssapi # does work
-L/usr/lib/x86_64-linux-gnu/mit-krb5 -Wl,-z,relro -lgssapi_krb5 -lkrb5 -lk5crypto -lcom_err
setup.py
正在查找用于链接的gssapi库,它在/usr/lib
中。在Debian Jesse中,大多数库现在保存在/usr/lib/x86_64-linux-gnu
中。同样,符号链接可以解决这个问题:
$ sudo ln -s /usr/lib/x86_64-linux-gnu/libgssapi_krb5.so.2 /usr/lib/libgssapi_krb5.so
编译失败,因为库中的一个符号无法识别。原因是没有正确获取头文件。我忘记包含krb5头文件的-dev
软件包了。请使用apt-get来修复这个问题:
$ sudo apt-get install libkrb5-dev
现在我们应该已经准备就绪。
$ sudo pip install gssapi
如果您想整理一下,可以删除指向 krb5-config.mit
命令的符号链接:
$ sudo rm /usr/bin/krb5-config
sudo apt install libkrb5-dev
实际上会安装/usr/bin/krb5-config和/usr/lib/libgssapi_krb5.so,因此不需要进行任何符号链接,只需安装libkrb5-dev即可。
krb5-devel
。 - Sergio Oliveira
pip
,请执行以下命令:sudo apt-get install python-pip
,然后执行sudo pip install --upgrade pip virtualenv virtualenvwrapper
。 - Dave/usr/lib/mit/bin/krb5-config
。 - wisbucky