我正在尝试使用Meson,gnome passwordsafe构建应用程序。我已经在Arch上成功建造了它,但此后搬到了Pureos(Debian(。
运行时:
$ meson . _build --prefix=/usr
它告诉我:
Meson.build:36:4:错误:遇到问题:缺少依赖性Pykeepass> = Master
我想念什么?
谢谢!
我使用pip
安装了pykeepass
。当那不起作用时,我尝试使用pip3。当那不起作用时,我再次尝试了两者,但是与sudo尝试了。仍然没有骰子。
目前,Python帮助识别pykeepass
已安装到:
/home/dc3p/.local/lib/python3.7/site-packages/pykeepass/__init__.py
/usr/local/lib/python3.7/dist-packages/pykeepass/__init__.py
/home/dc3p/.local/lib/python2.7/site-packages/pykeepass/__init__.py
/usr/local/lib/python2.7/dist-packages/pykeepass/__init__.py
pip
和pip3
列表将pykeepass
显示为存在。
当我当前将其安装在所有四个位置时,我也尝试过一次在任何位置安装一个位置。
我还尝试了没有sudo的meson
命令。无论我做什么,梅森都会丢下相同的错误。
预期结果是一个构建。
passwordSafe中的 meson.build
文件正在测试文件系统中的目录,如果安装目录有所不同,该目录可能会导致错误的负面。请参阅下面的代码提取。
# Python Module Check pykeepass_dir = join_paths(python_dir, 'pykeepass') construct_dir = join_paths(python_dir, 'construct') if run_command('[', '-d', pykeepass_dir, ']').returncode() != 0 error('Missing dependency pykeepass >= master') endif if run_command('[', '-d', construct_dir, ']').returncode() != 0 error('Missing dependency python-construct >= 2.9.45') endif
您可以将上述替换为以下内容,以根据导入测试依赖项:
python3_required_modules = ['pykeepass', 'construct']
foreach p : python3_required_modules
script = 'import importlib.util; import sys; exit(1) if importlib.util.find_spec(''+ p +'') is None else exit(0)'
if run_command(python_bin, '-c', script).returncode() != 0
error('Required Python3 module '' + p + '' not found')
endif
endforeach
这应该解决pykeepass
在您的路径内的问题。