(解决)ubuntu6.06编译GTK2.12出错

编译打包和其他
回复
klose911
帖子: 106
注册时间: 2008-02-01 17:18

(解决)ubuntu6.06编译GTK2.12出错

#1

帖子 klose911 » 2008-08-04 0:13

自己编译GTK2.12, configure通过了,但是编译出错, 请教怎么解决?
出错信息如下:
/bin/sh ../libtool --mode=link gcc -g -O2 -Wall -o gtk-query-immodules-2.0 queryimmodules.o libgtk-x11-2.0.la ../gdk-pixbuf/libgdk_pixbuf-2.0.la ../gdk/libgdk-x11-2.0.la
gcc -g -O2 -Wall -o .libs/gtk-query-immodules-2.0 queryimmodules.o ./.libs/libgtk-x11-2.0.so -L/usr/local/lib /home/klose/gtk/gtk+-2.12.11/gdk/.libs/libgdk-x11-2.0.so /usr/lib/libatk-1.0.so ../gdk-pixbuf/.libs/libgdk_pixbuf-2.0.so ../gdk/.libs/libgdk-x11-2.0.so /usr/lib/libpangocairo-1.0.so /usr/lib/libcairo.so /usr/lib/libpangoft2-1.0.so /usr/lib/libpango-1.0.so /usr/lib/libgobject-2.0.so /usr/lib/libgmodule-2.0.so /usr/lib/libglib-2.0.so /usr/local/lib/libpango-1.0.so /usr/local/lib/libcairo.so /usr/lib/libfreetype.so -lz -lpng12 -lfontconfig -lXext -lXrender -lX11 -lXinerama -lXrandr -lXcursor -lXfixes /home/klose/gtk/gtk+-2.12.11/gdk-pixbuf/.libs/libgdk_pixbuf-2.0.so /usr/local/lib/libgmodule-2.0.so -ldl /usr/local/lib/libgobject-2.0.so /usr/local/lib/libglib-2.0.so -lm
./.libs/libgtk-x11-2.0.so: undefined reference to `g_bookmark_file_get_title'
./.libs/libgtk-x11-2.0.so: undefined reference to `g_bookmark_file_get_is_private'
./.libs/libgtk-x11-2.0.so: undefined reference to `g_bookmark_file_set_description'
./.libs/libgtk-x11-2.0.so: undefined reference to `g_bookmark_file_get_size'
./.libs/libgtk-x11-2.0.so: undefined reference to `g_bookmark_file_free'
./.libs/libgtk-x11-2.0.so: undefined reference to `pango_extents_to_pixels'
./.libs/libgtk-x11-2.0.so: undefined reference to `g_sequence_new'
./.libs/libgtk-x11-2.0.so: undefined reference to `pango_layout_get_lines_readonly'
./.libs/libgtk-x11-2.0.so: undefined reference to `g_sequence_iter_is_begin'
./.libs/libgtk-x11-2.0.so: undefined reference to `g_sequence_move'
./.libs/libgtk-x11-2.0.so: undefined reference to `g_sequence_sort_changed_iter'
./.libs/libgtk-x11-2.0.so: undefined reference to `g_sequence_iter_next'
./.libs/libgtk-x11-2.0.so: undefined reference to `g_sequence_swap'
./.libs/libgtk-x11-2.0.so: undefined reference to `g_type_register_static_simple'
./.libs/libgtk-x11-2.0.so: undefined reference to `g_dpgettext'
./.libs/libgtk-x11-2.0.so: undefined reference to `cairo_pdf_surface_create'
./.libs/libgtk-x11-2.0.so: undefined reference to `cairo_surface_set_fallback_resolution'
./.libs/libgtk-x11-2.0.so: undefined reference to `g_slice_copy'
./.libs/libgtk-x11-2.0.so: undefined reference to `g_get_user_special_dir'
./.libs/libgtk-x11-2.0.so: undefined reference to `g_source_is_destroyed'
./.libs/libgtk-x11-2.0.so: undefined reference to `g_sequence_remove'
./.libs/libgtk-x11-2.0.so: undefined reference to `g_once_init_leave'
./.libs/libgtk-x11-2.0.so: undefined reference to `g_bookmark_file_load_from_file'
./.libs/libgtk-x11-2.0.so: undefined reference to `pango_layout_iter_get_line_readonly'
./.libs/libgtk-x11-2.0.so: undefined reference to `g_bookmark_file_get_visited'
./.libs/libgtk-x11-2.0.so: undefined reference to `pango_language_get_default'
./.libs/libgtk-x11-2.0.so: undefined reference to `g_bookmark_file_get_modified'
./.libs/libgtk-x11-2.0.so: undefined reference to `g_timeout_add_seconds_full'
./.libs/libgtk-x11-2.0.so: undefined reference to `g_key_file_set_double'
./.libs/libgtk-x11-2.0.so: undefined reference to `g_sequence_foreach'
./.libs/libgtk-x11-2.0.so: undefined reference to `g_sequence_iter_is_end'
./.libs/libgtk-x11-2.0.so: undefined reference to `g_bookmark_file_set_mime_type'
./.libs/libgtk-x11-2.0.so: undefined reference to `g_bookmark_file_set_is_private'
./.libs/libgtk-x11-2.0.so: undefined reference to `pango_layout_get_line_readonly'
./.libs/libgtk-x11-2.0.so: undefined reference to `g_hash_table_remove_all'
./.libs/libgtk-x11-2.0.so: undefined reference to `g_bookmark_file_has_item'
./.libs/libgtk-x11-2.0.so: undefined reference to `g_main_current_source'
./.libs/libgtk-x11-2.0.so: undefined reference to `g_key_file_get_double'
./.libs/libgtk-x11-2.0.so: undefined reference to `g_bookmark_file_get_applications'
/home/klose/gtk/gtk+-2.12.11/gdk/.libs/libgdk-x11-2.0.so: undefined reference to `pango_color_to_string'
./.libs/libgtk-x11-2.0.so: undefined reference to `g_sequence_iter_get_position'
./.libs/libgtk-x11-2.0.so: undefined reference to `cairo_ps_surface_set_size'
./.libs/libgtk-x11-2.0.so: undefined reference to `g_bookmark_file_get_uris'
./.libs/libgtk-x11-2.0.so: undefined reference to `g_bookmark_file_new'
./.libs/libgtk-x11-2.0.so: undefined reference to `g_bookmark_file_get_description'
./.libs/libgtk-x11-2.0.so: undefined reference to `g_bookmark_file_set_title'
./.libs/libgtk-x11-2.0.so: undefined reference to `cairo_surface_get_type'
../gdk-pixbuf/.libs/libgdk_pixbuf-2.0.so: undefined reference to `g_ascii_strtoll'
./.libs/libgtk-x11-2.0.so: undefined reference to `g_sequence_sort_iter'
./.libs/libgtk-x11-2.0.so: undefined reference to `g_sequence_get_iter_at_pos'
./.libs/libgtk-x11-2.0.so: undefined reference to `g_sequence_set'
./.libs/libgtk-x11-2.0.so: undefined reference to `g_bookmark_file_to_file'
./.libs/libgtk-x11-2.0.so: undefined reference to `g_sequence_insert_before'
./.libs/libgtk-x11-2.0.so: undefined reference to `g_bookmark_file_add_group'
./.libs/libgtk-x11-2.0.so: undefined reference to `cairo_pdf_surface_create_for_stream'
./.libs/libgtk-x11-2.0.so: undefined reference to `g_bookmark_file_add_application'
/home/klose/gtk/gtk+-2.12.11/gdk/.libs/libgdk-x11-2.0.so: undefined reference to `pango_cairo_show_error_underline'
./.libs/libgtk-x11-2.0.so: undefined reference to `g_bookmark_file_remove_item'
./.libs/libgtk-x11-2.0.so: undefined reference to `g_sequence_get_end_iter'
./.libs/libgtk-x11-2.0.so: undefined reference to `pango_matrix_transform_rectangle'
./.libs/libgtk-x11-2.0.so: undefined reference to `g_bookmark_file_get_mime_type'
./.libs/libgtk-x11-2.0.so: undefined reference to `g_bookmark_file_move_item'
./.libs/libgtk-x11-2.0.so: undefined reference to `g_sequence_free'
./.libs/libgtk-x11-2.0.so: undefined reference to `g_assertion_message_expr'
./.libs/libgtk-x11-2.0.so: undefined reference to `g_sequence_get_begin_iter'
./.libs/libgtk-x11-2.0.so: undefined reference to `g_sequence_get_length'
./.libs/libgtk-x11-2.0.so: undefined reference to `g_hash_table_get_keys'
./.libs/libgtk-x11-2.0.so: undefined reference to `g_once_init_enter_impl'
./.libs/libgtk-x11-2.0.so: undefined reference to `cairo_pdf_surface_set_size'
./.libs/libgtk-x11-2.0.so: undefined reference to `g_sequence_iter_get_sequence'
./.libs/libgtk-x11-2.0.so: undefined reference to `g_bookmark_file_get_groups'
./.libs/libgtk-x11-2.0.so: undefined reference to `g_bookmark_file_get_app_info'
./.libs/libgtk-x11-2.0.so: undefined reference to `g_sequence_get'
./.libs/libgtk-x11-2.0.so: undefined reference to `pango_layout_iter_get_run_readonly'
./.libs/libgtk-x11-2.0.so: undefined reference to `g_assertion_message'
./.libs/libgtk-x11-2.0.so: undefined reference to `g_bookmark_file_get_added'
./.libs/libgtk-x11-2.0.so: undefined reference to `g_sequence_iter_prev'
collect2: ld returned 1 exit status
make[4]: *** [gtk-query-immodules-2.0] Error 1
make[4]: Leaving directory `/home/klose/gtk/gtk+-2.12.11/gtk'
make[3]: *** [all-recursive] Error 1
make[3]: Leaving directory `/home/klose/gtk/gtk+-2.12.11/gtk'
make[2]: *** [all] Error 2
make[2]: Leaving directory `/home/klose/gtk/gtk+-2.12.11/gtk'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/klose/gtk/gtk+-2.12.11'
make: *** [all] Error 2
上次由 klose911 在 2008-08-04 18:47,总共编辑 1 次。
chasye
帖子: 333
注册时间: 2007-05-13 15:20

#2

帖子 chasye » 2008-08-04 2:37

Is pango cairo glib up to date??
klose911
帖子: 106
注册时间: 2008-02-01 17:18

#3

帖子 klose911 » 2008-08-04 3:10

自己编译安装了glib-2.16.5, pango-1.20.5, cairo-1.2.6
已经ldconfig了,不然configure没法通过的
头像
jarryson
帖子: 4002
注册时间: 2005-08-14 19:53

#4

帖子 jarryson » 2008-08-04 14:03

换个源,8.04或者8.10的。整体升级把。。。恐怖的工程
klose911
帖子: 106
注册时间: 2008-02-01 17:18

#5

帖子 klose911 » 2008-08-04 18:46

问题找到了!
必须先编译安装cairo, 不然随后编译的pango对cairo不支持,次序弄反了。
等到编译gtk对于部分需要cairo支持的文件还是链接为于/usr/lib原来安装过的pango, 而不是新安装于/usr/local/lib的pango。
讨厌的是configure时候由于pkg能够找到新的pango的版本信息,所以即使部分使用原来的pango, configure还是可以通过的!
hxldhz
帖子: 1
注册时间: 2009-05-09 17:24

Re: (解决)ubuntu6.06编译GTK2.12出错

#6

帖子 hxldhz » 2009-05-09 17:26

5楼正解 :em11
回复