问题描述
我想从源 GNOME 代码安装图腾应用程序。
我从 GNOME github 克隆了图腾应用程序的源代码,并使用 messon 和 ninja 命令编译,所有这些都成功编译。
问题是当我调用 meson install 命令时,它一度中断。
我遵循的步骤:
git clone https://github.com/GNOME/totem.git
cd totem
meson builddir
ninja
ninja test
cd ..
meson compile
cd builddir
sudo ninja install
发生的错误:
Traceback (most recent call last):
File "/usr/bin/meson",line 20,in <module>
sys.exit(mesonmain.main())
File "/usr/lib/python3/dist-packages/mesonbuild/mesonmain.py",line 226,in main
return run(sys.argv[1:],launcher)
File "/usr/lib/python3/dist-packages/mesonbuild/mesonmain.py",line 215,in run
return run_script_command(args[1],args[2:])
File "/usr/lib/python3/dist-packages/mesonbuild/mesonmain.py",line 163,in run_script_command
return module.run(script_args)
File "/usr/lib/python3/dist-packages/mesonbuild/scripts/yelphelper.py",line 130,in run
merge_translations(build_subdir,abs_sources,langs)
File "/usr/lib/python3/dist-packages/mesonbuild/scripts/yelphelper.py",line 57,in merge_translations
subprocess.call([
File "/usr/lib/python3.8/subprocess.py",line 340,in call
with Popen(*popenargs,**kwargs) as p:
File "/usr/lib/python3.8/subprocess.py",line 854,in __init__
self._execute_child(args,executable,preexec_fn,close_fds,File "/usr/lib/python3.8/subprocess.py",line 1702,in _execute_child
raise child_exception_type(errno_num,err_msg,err_filename)
FileNotFoundError: [Errno 2] No such file or directory: 'itstool'
Failed: meson-install
/usr/bin/meson install --no-rebuild
ninja: build stopped: subcommand Failed.
注意:我在两台 PC (ubuntu 20.04) 上尝试过,在一台 PC 上它可以工作,而在其他 PC 上我得到错误。
解决方法
看起来您缺少图腾的构建依赖项之一:itstool(转换 xml 本地化(语言翻译)数据);通过使用 i18 module here 依赖。你可以用
安装它sudo apt-get install itstool
Here 是其他必需依赖项的列表(尽管最新或其他软件包版本可能有效,但也可能无效)。