解决在 Linux 上安装 gtk-sharp-2.12.10 时缺失 pango 的问题
环境:Debian Linux 6.0.0-i386
从 mono 官方下载 gtk-sharp-2.12.10.tar.bz2,
tar jxvf gtk-sharp-2.12.10.tar.bz2
cd gtk-sharp-2.12.10
./configure --prefix=/usr/local/mono
遇到以下问题:
checking size of off_t... 4
checking pkg-config is at least version 0.9.0... yes
checking for MONO_DEPENDENCY... yes
checking for gacutil... /usr/local/mono/bin/gacutil
checking for al... /usr/local/mono/bin/al
checking for mono... /usr/local/mono/bin/mono
checking for mcs... /usr/local/mono/bin/mcs
checking for MONO_CAIRO... yes
checking for GLIB... yes
checking for PANGO... configure: error: Package requirements (pango) were not met:
No package 'pango' 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 PANGO_CFLAGS
and PANGO_LIBS to avoid the need to call pkg-config.
See the pkg-config man page for more details.
DebianVM01:/home/public/install/gtk-sharp-2.12.10#
查了好多文档,包括用 find / -name "pango" 来查找,然后再折腾 pkgconfig ... 但是最终是这样解决的:
apt-get install build-essential libgtk2.0-dev
然后再执行上面的 ./configure 就不再缺失 pango 了:
configure: creating ./config.status
config.status: creating AssemblyInfo.cs
config.status: creating Makefile
config.status: creating policy.config
config.status: creating msi/gtk-sharp-2.0.wxs
config.status: creating msi/Makefile
config.status: creating msi/unmanaged/Makefile
config.status: creating msi/unmanaged/custom/Makefile
config.status: creating msi/unmanaged/custom/etc/Makefile
config.status: creating msi/unmanaged/custom/etc/gtk-2.0/Makefile
config.status: creating msi/unmanaged/custom/share/Makefile
config.status: creating msi/unmanaged/custom/share/icons/Makefile
config.status: creating msi/unmanaged/custom/share/icons/hicolor/Makefile
config.status: creating sources/Makefile
config.status: creating parser/Makefile
config.status: creating parser/gapi-2.0.pc
config.status: creating parser/gapi2-fixup
config.status: creating parser/gapi2-parser
config.status: creating generator/Makefile
config.status: creating generator/gapi2-codegen
config.status: creating glib/Makefile
config.status: creating glib/glib-sharp-2.0.pc
config.status: creating glib/glib-sharp.dll.config
config.status: creating glib/glue/Makefile
config.status: creating cairo/Makefile
config.status: creating pango/Makefile
config.status: creating pango/pango-sharp.dll.config
config.status: creating pango/glue/Makefile
config.status: creating atk/Makefile
config.status: creating atk/atk-sharp.dll.config
config.status: creating atk/glue/Makefile
config.status: creating gdk/Makefile
config.status: creating gdk/gdk-sharp.dll.config
config.status: creating gdk/glue/Makefile
config.status: creating gtk/Makefile
config.status: creating gtk/gtk-sharp-2.0.pc
config.status: creating gtk/gtk-sharp.dll.config
config.status: creating gtk/glue/Makefile
config.status: creating glade/Makefile
config.status: creating glade/glade-sharp.dll.config
config.status: creating glade/glade-sharp-2.0.pc
config.status: creating glade/glue/Makefile
config.status: creating gtkdotnet/Makefile
config.status: creating gtkdotnet/gtk-dotnet.dll.config
config.status: creating gtkdotnet/gtk-dotnet-2.0.pc
config.status: creating doc/Makefile
config.status: creating sample/GtkDemo/Makefile
config.status: creating sample/Makefile
config.status: creating sample/pixmaps/Makefile
config.status: creating sample/test/Makefile
config.status: creating sample/valtest/Makefile
config.status: creating sample/valtest/valtest.exe.config
config.status: creating sample/opaquetest/Makefile
config.status: creating sample/opaquetest/opaquetest.exe.config
config.status: creating config.h
config.status: executing depfiles commands
config.status: executing libtool commands
---
Configuration summary
* Installation prefix = /usr/local/mono
* C# compiler: /usr/local/mono/bin/mcs -define:GTK_SHARP_2_6 -define:GTK_SHARP_2_8 -define:GTK_SHARP_2_10 -define:GTK_SHARP_2_12
Optional assemblies included in the build:
* glade-sharp.dll: no
* gtk-dotnet.dll: yes
* Mono.Cairo.dll: using system assembly
NOTE: if any of the above say 'no' you may install the
corresponding development packages for them, rerun
autogen.sh to include them in the build.
* Documentation build enabled: yes
---
DebianVM01:/home/public/install/gtk-sharp-2.12.10#