我正在尝试从源代码构建女妖。我运行了autogen.sh
和输出的一些(部分):
configure: error: Package requirements (gstreamer-0.10 >= 0.10.26
gstreamer-base-0.10 >= 0.10.26
gstreamer-plugins-base-0.10 >= 0.10.26
gstreamer-controller-0.10 >= 0.10.26
gstreamer-dataprotocol-0.10 >= 0.10.26
gstreamer-fft-0.10 >= 0.10.26) were not met:
No package 'gstreamer-0.10' found
No package 'gstreamer-base-0.10' found
No package 'gstreamer-plugins-base-0.10' found
No package 'gstreamer-controller-0.10' found
No package 'gstreamer-dataprotocol-0.10' found
No package 'gstreamer-fft-0.10' found
Consider adjusting the PKG_CONFIG_PATH environment variable if you
installed software in a non-standard prefix.
Alternatively, you may set the environment variables GST_CFLAGS
and GST_LIBS to avoid the need to call pkg-config.
See the pkg-config man page for more details.
Error: Could not run ./configure, which is required to configure banshee
我已经运行sudo apt-get build-dep banshee
,所以我不知道如何解决这个问题。
答案 0 :(得分:7)
有不同类型的依赖项,构建时依赖项和运行时依赖项。构建程序通常需要更多的依赖项,而不是运行它所需的程序。例如,运行程序可能需要共享库。但是,构建程序也可能需要头文件。安装banshee时,通常会安装所有运行时依赖项,但不会安装构建时依赖项。由于您正在使用apt-get,因此您应该调查需要安装哪些软件包以获得所需的构建依赖项。
您收到的错误消息来自名为pkg-config的程序。它通常用于跟踪构建依赖项。例如,某些库可能需要在不同系统上使用不同的编译器标志,因此pkg-config具有一个知道如何使用的库目录。这里Banshee的构建系统调用pkg-config以便找到使用gstreamer库的正确标志,但由于未安装gstreamer的开发文件,pkg-config将不知道如何使用它们。一旦安装了使用pkg-config的软件包的开发文件,就可以通过运行pkg-config来请求标志,例如pkg-config --cflags --libs gstreamer-0.10
将返回gstreamer-0.10库的预处理器,编译器和链接标志。
pkg-config使用的文件通常名为name-of-library.pc
。对于pkg-config找不到的所有软件包,请使用软件包管理器搜索gstreamer-0.10.pc
,gstreamer-base-0.10.pc
等文件。使用apt-get的系统通常有一个名为apt-file的工具(虽然不一定默认安装),可用于向包管理器查询提供特定文件的包的名称,例如apt-file search gstreamer-0.10.pc
。许多发行版(例如Debian或Ubuntu)也具有支持基于文件名搜索包的Web界面。
有时,您可以通过运行apt-get build-dep name-of-package
来安装所需的构建依赖项。它将安装构建程序所需的包。但是,这将安装构建程序包管理器分发的程序包版本的要求。您正在构建的版本可能具有不同的依赖关系,但如果要求相同,那么通常应该为您提供所需的内容。
答案 1 :(得分:1)
显然,马库斯的答案很棒,但如果你想谈谈,答案是:sudo apt-get install libgstreamer0.10-dev libgstreamer-plugins-base0.10-dev
我现在将更新Banshee网站:done。