0

我有带有 vortex86DX 处理器的迷你电脑。今天我在上面安装了 Ubuntu 9.04。现在我想使用我的程序,它使用 gtk/gtk.h,来显示一些数据。我有一个问题 - 哪些依赖项有使用 GTK 3.0 的程序?这对我来说非常重要,因为我无法在这台小型电脑上访问互联网。

4

1 回答 1

0

您通常使用pkg-config构建此类 GTK 程序。我得到了(在 Debian/Sid/AMD64 上)编译标志

  % pkg-config --cflags gtk+-x11-3.0
  -pthread -I/usr/include/gtk-3.0 -I/usr/include/atk-1.0 \
  -I/usr/include/at-spi2-atk/2.0 -I/usr/include/pango-1.0 \
  -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo \
  -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/glib-2.0 \
  -I/usr/lib/x86_64-linux-gnu/glib-2.0/include \
  -I/usr/include/harfbuzz -I/usr/include/freetype2 \
  -I/usr/include/pixman-1 -I/usr/include/libpng12 \
  -I/usr/include/libdrm  

和链接标志

   % pkg-config --libs gtk+-x11-3.0
  -lgtk-3 -lgdk-3 -latk-1.0 -lgio-2.0 -lpangocairo-1.0 \
  -lgdk_pixbuf-2.0 -lcairo-gobject -lpango-1.0 -lcairo \
  -lgobject-2.0 -lglib-2.0  

请注意,这些共享库链接了其他一些库(例如-lX11-ldbus)。尝试ldd一些 GTK 二进制文件(例如你自己的,或者gedit

注意:为了便于阅读,我手动添加了反斜杠和换行符

但是,还有更多其他运行时依赖项:X11 服务器和相关的东西(会话和窗口管理器、字体和图像,甚至可能是一些“桌面”环境 à la Gnome 或 IceWM 等......)。

aptitude install我建议使用带有网络连接(可能使用 chroot-ed 环境)的软件包系统(例如在 Ubuntu 上使用)安装 GTK,以了解所有依赖项。

于 2013-08-27T15:38:42.830 回答