我正在尝试使用 pygit2 方法为 SaltStack 设置 gitfs。我已经在我的机器上安装了 pygit2 和 libgit2:
[root@r9tvap1109 site-packages]# yum list installed | grep git2
libgit2.x86_64 0.21.5-1.el7 @epel
python-pygit2.x86_64 0.21.4-2.el7 @epel
我还安装了 python-devel 包。这就是 Python 2.7 的全部内容。
每当我尝试导入 pygit2 包以测试它是否安装正确时,我都会收到一堆 cffi 警告和错误。以这个堆栈跟踪结束:
pygit2/__pycache__/pygit2_cffi_c721781dxbf062fb5.c:6893:21: error: (near initialization for ‘nums[19]’)
Traceback (most recent call last):
File "<string>", line 1, in <module>
File "pygit2/__init__.py", line 35, in <module>
from .blame import Blame, BlameHunk
File "pygit2/blame.py", line 32, in <module>
from .errors import check_error
File "pygit2/errors.py", line 29, in <module>
from .ffi import ffi, C
File "pygit2/ffi.py", line 35, in <module>
ffi, C = get_ffi()
File "pygit2/_utils.py", line 101, in get_ffi
include_dirs=[libgit2_include], library_dirs=[libgit2_lib])
File "cffi/api.py", line 450, in verify
lib = self.verifier.load_library()
File "cffi/verifier.py", line 113, in load_library
self._compile_module()
File "cffi/verifier.py", line 210, in _compile_module
outputfilename = ffiplatform.compile(tmpdir, self.get_extension())
File "cffi/ffiplatform.py", line 29, in compile
outputfilename = _build(tmpdir, ext, compiler_verbose)
File "cffi/ffiplatform.py", line 62, in _build
raise VerificationError('%s: %s' % (e.__class__.__name__, e))
cffi.ffiplatform.VerificationError: CompileError: command 'gcc' failed with exit status 1
这是我尝试过的事情的清单:
- 卸载/重新安装(使用 yum)
- 通过二进制文件安装 libgit2,然后尝试使用 pip 安装 pygit2(由于 GCC 编译器错误也失败)。
- 验证我安装了 GCC 编译器
- 尝试将/usr/lib64/python2.7/site-packages 中的cffi文件移动到 [..]pygit2/ pycache /
- 对其他问题进行了一些搜索 - 我找到了这个链接查看 JDavid 的评论,大约有 2 个解决方案
任何帮助表示赞赏