我正在尝试通过jhbuild编译yelp-xsl(libyelp和yelp使用的核心XSLT样式表)。
我正在使用从今天开始全面更新的Ubuntu Raring 13.04。
我已经安装了all the dependencies for Ubuntu已安装和相关的开发包:
$ dpkg -l libxslt* | grep dev; dpkg -l libxml2* | grep dev
un libxslt-dev <none> (no description available)
ii libxslt1-dev 1.1.27-1ubuntu1 i386 XSLT 1.0 processing library - development kit
ii libxml2-dev:i386 2.9.0+dfsg1-4ubuntu1 i386 Development files for the GNOME XML library
但是运行编译我得到了一个失败的结果:
$ jhbuild build yelp-xsl
*** Verificando itstool *** [1/2]
*** Omitiendo itstool (paquete y dependencias no actualizados) *** [1/2]
*** Verificando yelp-xsl *** [2/2]
git remote set-url origin git://git.gnome.org/yelp-xsl
git remote update origin
Fetching origin
git pull --rebase
Current branch master is up to date.
*** Configurando yelp-xsl *** [2/2]
./autogen.sh --prefix /opt/gnome --libdir '/opt/gnome/lib' --disable-static --disable-gtk-doc
autoreconf: Entering directory `.'
autoreconf: configure.ac: not using Gettext
autoreconf: running: aclocal --force -I m4 ${ACLOCAL_FLAGS}
autoreconf: configure.ac: tracing
autoreconf: configure.ac: not using Libtool
autoreconf: running: /opt/gnome/bin/autoconf --force
autoreconf: configure.ac: not using Autoheader
autoreconf: running: automake --add-missing --copy --force-missing
doc/yelp-xsl/Makefile.am:12: filter-out %db2html-suppressed.xsl, \
doc/yelp-xsl/Makefile.am:12: $(sort $(patsubst ./%, %, \
doc/yelp-xsl/Makefile.am:12: $(foreach dir,$(xsldoc_dirs: non-POSIX variable name
doc/yelp-xsl/Makefile.am:12: (probably a GNU make extension)
doc/yelp-xsl/Makefile.am:12: wildcard $(dir: non-POSIX variable name
doc/yelp-xsl/Makefile.am:12: (probably a GNU make extension)
doc/yelp-xsl/Makefile.am:15: sort $(foreach xsl,$(xsldoc_xsls: non-POSIX variable name
doc/yelp-xsl/Makefile.am:15: (probably a GNU make extension)
doc/yelp-xsl/Makefile.am:15: basename $(notdir $(xsl: non-POSIX variable name
doc/yelp-xsl/Makefile.am:15: (probably a GNU make extension)
doc/yelp-xsl/Makefile.am:16: patsubst %, C/%.page, $(xsldoc_base: non-POSIX variable name
doc/yelp-xsl/Makefile.am:16: (probably a GNU make extension)
doc/yelp-xsl/Makefile.am:24: filter %/$(basename $(notdir $@: non-POSIX variable name
doc/yelp-xsl/Makefile.am:24: (probably a GNU make extension)
doc/yelp-xsl/Makefile.am:36: wildcard C/*.page: non-POSIX variable name
doc/yelp-xsl/Makefile.am:36: (probably a GNU make extension)
xslt/docbook/html/Makefile.am:30: wildcard db*.xsl: non-POSIX variable name
xslt/docbook/html/Makefile.am:30: (probably a GNU make extension)
autoreconf: Leaving directory `.'
configure: WARNING: unrecognized options: --disable-static, --disable-gtk-doc
checking for a BSD-compatible install... /home/shakaran/.local/bin/install-check
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking for gawk... (cached) gawk
checking for itstool... itstool
checking for pkg-config... /opt/gnome/bin/pkg-config
checking pkg-config is at least version 0.9.0... yes
checking for YELP_XSL... no
configure: error: Package requirements (
libxml-2.0 >= 2.6.12
libxslt >= 1.1.8
) were not met:
No package 'libxml-2.0' found
No package 'libxslt' 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 YELP_XSL_CFLAGS
and YELP_XSL_LIBS to avoid the need to call pkg-config.
See the pkg-config man page for more details.
*** Error durante la fase configure de yelp-xsl: ########## Error de ejecución ./autogen.sh --prefix /opt/gnome --libdir '/opt/gnome/lib' --disable-static --disable-gtk-doc *** [2/2]
答案 0 :(得分:1)
在irc.gnome.org的#gnome-hackers 中提问。有些人告诉我,错误是通过使用以前的 jhbuild bootstrap 产生的。这可能会产生冲突,因为有可能安装了自己的pkg-config,它不知道multiarch ubuntu目录。
所以跑步:
$ pkg-config --modversion libxml-2.0 libxslt
报告 2.9.0 和 1.1.27 版本,但正在运行:
$ jhbuild run pkg-config --modversion libxml-2.0 libxslt
Package libxml-2.0 was not found in the pkg-config search path.
Perhaps you should add the directory containing `libxml-2.0.pc'
to the PKG_CONFIG_PATH environment variable
No package 'libxml-2.0' found
Package libxslt was not found in the pkg-config search path.
Perhaps you should add the directory containing `libxslt.pc'
to the PKG_CONFIG_PATH environment variable
No package 'libxslt' found
解决此问题的唯一解决方案是完全擦除 / opt / gnome / 文件夹,然后重试。然后一切正常。