+ -
当前位置:首页 → 问答吧 → 编译libglade-2.6.1出错!!!!

编译libglade-2.6.1出错!!!!

时间:2010-03-16

来源:互联网

make之后的出错信息


make all-recursive
make[1]: Entering directory `/home/lib-X/libglade-2.6.1'
Making all in glade
make[2]: Entering directory `/home/lib-X/libglade-2.6.1/glade'
/bin/sh ../libtool --tag=CC --mode=link gcc -g -O2 -Wall -std=c9x -o libglade-2.0.la -rpath /usr/lib -version-info 0:7:0 -export-symbols-regex "^[^_].*" -no-undefined glade-init.lo glade-xml.lo glade-parser.lo glade-gtk.lo -lxml2 -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgdk_pixbuf-2.0 -lm -lpangocairo-1.0 -lpango-1.0 -lcairo -lgobject-2.0 -lgmodule-2.0 -ldl -lglib-2.0
rm -fr .libs/libglade-2.0.exp .libs/libglade-2.0.ver
generating symbol list for `libglade-2.0.la'
/usr/bin/nm -B .libs/glade-init.o .libs/glade-xml.o .libs/glade-parser.o .libs/glade-gtk.o | sed -n -e 's/^.*[ ]\([ABCDGIRSTW][ABCDGIRSTW]*\)[ ][ ]*\([_A-Za-z][_A-Za-z0-9]*\)$/\1 \2 \2/p' | /bin/sed 's/.* //' | sort | uniq > .libs/libglade-2.0.exp
/bin/grep -E -e "^[^_].*" ".libs/libglade-2.0.exp" > ".libs/libglade-2.0.expT"
mv -f ".libs/libglade-2.0.expT" ".libs/libglade-2.0.exp"
echo "{ global:" > .libs/libglade-2.0.ver
cat .libs/libglade-2.0.exp | sed -e "s/\(.*\)/\1;/" >> .libs/libglade-2.0.ver
echo "local: *; };" >> .libs/libglade-2.0.ver
gcc -shared .libs/glade-init.o .libs/glade-xml.o .libs/glade-parser.o .libs/glade-gtk.o /usr/lib/libxml2.so /usr/lib/libgtk-x11-2.0.so /usr/lib/libgdk-x11-2.0.so /usr/lib/libatk-1.0.so -L/usr/lib /usr/lib/libgdk_pixbuf-2.0.so -lm /usr/lib/libpangocairo-1.0.so -L/usr/X11R7/lib /usr/lib/libpango-1.0.so /usr/lib/libcairo.so /usr/lib/libgobject-2.0.so /usr/lib/libgmodule-2.0.so -ldl /usr/lib/libglib-2.0.so -Wl,-soname -Wl,libglade-2.0.so.0 -Wl,-version-script -Wl,.libs/libglade-2.0.ver -o .libs/libglade-2.0.so.0.0.7
.libs/glade-xml.o: In function `g_bit_nth_lsf':
/usr/include/glib-2.0/glib/gutils.h:277: multiple definition of `g_bit_nth_lsf'
.libs/glade-init.o:/usr/include/glib-2.0/glib/gutils.h:277: first defined here
.libs/glade-xml.o: In function `g_bit_nth_msf':
/usr/include/glib-2.0/glib/gutils.h:291: multiple definition of `g_bit_nth_msf'
.libs/glade-init.o:/usr/include/glib-2.0/glib/gutils.h:291: first defined here
.libs/glade-xml.o: In function `g_trash_stack_push':
/usr/include/glib-2.0/glib/gutils.h:322: multiple definition of `g_trash_stack_push'
.libs/glade-init.o:/usr/include/glib-2.0/glib/gutils.h:322: first defined here
.libs/glade-xml.o: In function `g_trash_stack_pop':
/usr/include/glib-2.0/glib/gutils.h:330: multiple definition of `g_trash_stack_pop'
.libs/glade-init.o:/usr/include/glib-2.0/glib/gutils.h:330: first defined here
.libs/glade-xml.o: In function `g_trash_stack_peek':
/usr/include/glib-2.0/glib/gutils.h:347: multiple definition of `g_trash_stack_peek'
.libs/glade-init.o:/usr/include/glib-2.0/glib/gutils.h:347: first defined here
.libs/glade-xml.o: In function `g_trash_stack_height':
/usr/include/glib-2.0/glib/gutils.h:356: multiple definition of `g_trash_stack_height'
.libs/glade-init.o:/usr/include/glib-2.0/glib/gutils.h:356: first defined here
.libs/glade-xml.o: In function `g_bit_storage':
/usr/include/glib-2.0/glib/gutils.h:304: multiple definition of `g_bit_storage'
.libs/glade-init.o:/usr/include/glib-2.0/glib/gutils.h:304: first defined here
.libs/glade-parser.o: In function `g_bit_nth_lsf':
/usr/include/glib-2.0/glib/gutils.h:277: multiple definition of `g_bit_nth_lsf'
.libs/glade-init.o:/usr/include/glib-2.0/glib/gutils.h:277: first defined here
.libs/glade-parser.o: In function `g_bit_nth_msf':
/usr/include/glib-2.0/glib/gutils.h:291: multiple definition of `g_bit_nth_msf'
.libs/glade-init.o:/usr/include/glib-2.0/glib/gutils.h:291: first defined here
.libs/glade-parser.o: In function `g_trash_stack_push':
/usr/include/glib-2.0/glib/gutils.h:322: multiple definition of `g_trash_stack_push'
.libs/glade-init.o:/usr/include/glib-2.0/glib/gutils.h:322: first defined here
.libs/glade-parser.o: In function `g_trash_stack_pop':
/usr/include/glib-2.0/glib/gutils.h:330: multiple definition of `g_trash_stack_pop'
.libs/glade-init.o:/usr/include/glib-2.0/glib/gutils.h:330: first defined here
.libs/glade-parser.o: In function `g_trash_stack_peek':
/usr/include/glib-2.0/glib/gutils.h:347: multiple definition of `g_trash_stack_peek'
.libs/glade-init.o:/usr/include/glib-2.0/glib/gutils.h:347: first defined here
.libs/glade-parser.o: In function `g_trash_stack_height':
/usr/include/glib-2.0/glib/gutils.h:356: multiple definition of `g_trash_stack_height'
.libs/glade-init.o:/usr/include/glib-2.0/glib/gutils.h:356: first defined here
.libs/glade-parser.o: In function `g_bit_storage':
/usr/include/glib-2.0/glib/gutils.h:304: multiple definition of `g_bit_storage'
.libs/glade-init.o:/usr/include/glib-2.0/glib/gutils.h:304: first defined here
.libs/glade-gtk.o: In function `g_bit_nth_lsf':
/usr/include/glib-2.0/glib/gutils.h:277: multiple definition of `g_bit_nth_lsf'
.libs/glade-init.o:/usr/include/glib-2.0/glib/gutils.h:277: first defined here
.libs/glade-gtk.o: In function `g_bit_nth_msf':
/usr/include/glib-2.0/glib/gutils.h:291: multiple definition of `g_bit_nth_msf'
.libs/glade-init.o:/usr/include/glib-2.0/glib/gutils.h:291: first defined here
.libs/glade-gtk.o: In function `g_trash_stack_push':
/usr/include/glib-2.0/glib/gutils.h:322: multiple definition of `g_trash_stack_push'
.libs/glade-init.o:/usr/include/glib-2.0/glib/gutils.h:322: first defined here
.libs/glade-gtk.o: In function `g_trash_stack_pop':
/usr/include/glib-2.0/glib/gutils.h:330: multiple definition of `g_trash_stack_pop'
.libs/glade-init.o:/usr/include/glib-2.0/glib/gutils.h:330: first defined here
.libs/glade-gtk.o: In function `g_trash_stack_peek':
/usr/include/glib-2.0/glib/gutils.h:347: multiple definition of `g_trash_stack_peek'
.libs/glade-init.o:/usr/include/glib-2.0/glib/gutils.h:347: first defined here
.libs/glade-gtk.o: In function `g_trash_stack_height':
/usr/include/glib-2.0/glib/gutils.h:356: multiple definition of `g_trash_stack_height'
.libs/glade-init.o:/usr/include/glib-2.0/glib/gutils.h:356: first defined here
.libs/glade-gtk.o: In function `g_bit_storage':
/usr/include/glib-2.0/glib/gutils.h:304: multiple definition of `g_bit_storage'
.libs/glade-init.o:/usr/include/glib-2.0/glib/gutils.h:304: first defined here
collect2: ld returned 1 exit status
make[2]: *** [libglade-2.0.la] Error 1
make[2]: Leaving directory `/home/lib-X/libglade-2.6.1/glade'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/lib-X/libglade-2.6.1'
make: *** [all] Error 2


在论坛上看到跟我一样的出错信息:
http://www.linuxsir.org/bbs/thread345628.html
上面没写具体怎么解决!

libglade-2.6.1依赖于:
libxml2-2.6.31
GTK+-2.10.13 ->> cairo-1.4.14 Pango-1.16.4, ATK-1.18.0
均已安装而且没问题。。

root@gns12:/home/lib-X/libglade-2.6.1$ll /usr/lib/libxml2.*
-rw-r--r-- 1 root root 4.7M Mar 15 15:12 /usr/lib/libxml2.a
-rwxr-xr-x 1 root root 801 Mar 15 15:12 /usr/lib/libxml2.la
lrwxrwxrwx 1 root root 17 Mar 15 15:12 /usr/lib/libxml2.so -> libxml2.so.2.6.31
lrwxrwxrwx 1 root root 17 Mar 15 15:12 /usr/lib/libxml2.so.2 -> libxml2.so.2.6.31
-rwxr-xr-x 1 root root 3.4M Mar 15 15:12 /usr/lib/libxml2.so.2.6.31


root@gns12:/home/lib-X/libglade-2.6.1$ll /usr/lib/libg?k*
lrwxrwxrwx 1 root root 19 Mar 12 17:56 /usr/lib/libgdk-1.2.so.0 -> libgdk-1.2.so.0.9.1
-rwxr-xr-x 1 root root 674K Mar 12 17:56 /usr/lib/libgdk-1.2.so.0.9.1
-rw-r--r-- 1 root root 830 Mar 15 15:08 /usr/lib/libgdk-x11-2.0.la
lrwxrwxrwx 1 root root 27 Mar 15 15:08 /usr/lib/libgdk-x11-2.0.so -> libgdk-x11-2.0.so.0.1000.13
lrwxrwxrwx 1 root root 27 Mar 15 15:08 /usr/lib/libgdk-x11-2.0.so.0 -> libgdk-x11-2.0.so.0.1000.13
-rwxr-xr-x 1 root root 1.9M Mar 15 15:08 /usr/lib/libgdk-x11-2.0.so.0.1000.13
-rw-r--r-- 1 root root 911K Mar 12 17:56 /usr/lib/libgdk.a
-rwxr-xr-x 1 root root 720 Mar 12 17:56 /usr/lib/libgdk.la
lrwxrwxrwx 1 root root 19 Mar 12 17:56 /usr/lib/libgdk.so -> libgdk-1.2.so.0.9.1
-rwxr-xr-x 1 root root 959 Mar 15 15:08 /usr/lib/libgdk_pixbuf-2.0.la
lrwxrwxrwx 1 root root 30 Mar 15 15:08 /usr/lib/libgdk_pixbuf-2.0.so -> libgdk_pixbuf-2.0.so.0.1000.13
lrwxrwxrwx 1 root root 30 Mar 15 15:08 /usr/lib/libgdk_pixbuf-2.0.so.0 -> libgdk_pixbuf-2.0.so.0.1000.13
-rwxr-xr-x 1 root root 279K Mar 15 15:08 /usr/lib/libgdk_pixbuf-2.0.so.0.1000.13
-rwxr-xr-x 1 root root 1.2K Mar 15 15:08 /usr/lib/libgdk_pixbuf_xlib-2.0.la
lrwxrwxrwx 1 root root 35 Mar 15 15:08 /usr/lib/libgdk_pixbuf_xlib-2.0.so -> libgdk_pixbuf_xlib-2.0.so.0.1000.13
lrwxrwxrwx 1 root root 35 Mar 15 15:08 /usr/lib/libgdk_pixbuf_xlib-2.0.so.0 -> libgdk_pixbuf_xlib-2.0.so.0.1000.13
-rwxr-xr-x 1 root root 159K Mar 15 15:08 /usr/lib/libgdk_pixbuf_xlib-2.0.so.0.1000.13
lrwxrwxrwx 1 root root 19 Mar 12 17:56 /usr/lib/libgtk-1.2.so.0 -> libgtk-1.2.so.0.9.1
-rwxr-xr-x 1 root root 4.2M Mar 12 17:56 /usr/lib/libgtk-1.2.so.0.9.1
-rw-r--r-- 1 root root 830 Mar 15 15:08 /usr/lib/libgtk-x11-2.0.la
lrwxrwxrwx 1 root root 27 Mar 15 15:08 /usr/lib/libgtk-x11-2.0.so -> libgtk-x11-2.0.so.0.1000.13
lrwxrwxrwx 1 root root 27 Mar 15 15:08 /usr/lib/libgtk-x11-2.0.so.0 -> libgtk-x11-2.0.so.0.1000.13
-rwxr-xr-x 1 root root 12M Mar 15 15:08 /usr/lib/libgtk-x11-2.0.so.0.1000.13
-rw-r--r-- 1 root root 6.5M Mar 12 17:56 /usr/lib/libgtk.a
-rwxr-xr-x 1 root root 720 Mar 12 17:56 /usr/lib/libgtk.la
lrwxrwxrwx 1 root root 19 Mar 12 17:56 /usr/lib/libgtk.so -> libgtk-1.2.so.0.9.1

root@gns12:/home/lib-X/libglade-2.6.1$ld -verbose | grep SEARCH
SEARCH_DIR("/usr/i686-pc-linux-gnu/lib"); SEARCH_DIR("/usr/local/lib"); SEARCH_DIR("/lib"); SEARCH_DIR("/usr/lib");

我在网上搜了好多关于这个错误,还是没有头绪,请各位高手给于指点,谢谢

作者: wuruiyuan   发布时间: 2010-03-16

各位大虾们,小弟在此跪拜哪位高手指点一下迷津!万分感激ing.....
小弟实在是黔驴技穷了,急!!~~~!!~~急~!!!@~~急啊~~~~~

作者: wuruiyuan   发布时间: 2010-03-17

发行版可能更适合您。

没经验时,请严格参照 BLFS/CBLFS 做,保证软件版本严格一致。
glib gtk gnome 正处于大变动时期,很多 gnome gtk 东东正向 glib 转移。

作者: 聚焦深空   发布时间: 2010-03-17

gnome3 不远了,libglade 已在废弃列表上。

作者: 聚焦深空   发布时间: 2010-03-17

引用:
作者: 聚焦深空
发行版可能更适合您。

没经验时,请严格参照 BLFS/CLFS 做,保证软件版本严格一致。
glib gtk gnome 正处于大变动时期,很多 gnome gtk 东东正向 glib 转移。
谢谢这位高手的回帖,就是因为想多了解关于LINUX里的一些东西 才想尝试自己动手。。。 拜读了论坛上许多高手发的帖,让我的思路清晰了一些。 我是按照官方手册BLFS6.3上面的步骤来做的,在碰到问题并解决它的过程里我相信能学到更多东西! 我尝试把它相关联的都重新装了一下 ,还是不能编译通过。能否帮我看看是哪里出了问题??

作者: wuruiyuan   发布时间: 2010-03-17

非常反感“高手”,请删除您词库中相关记录。

重复一遍:"没经验时,请严格参照 BLFS/CBLFS 做,保证软件版本严格一致"。
libglade-2.6.1 相当古老,您 glib 太新。

作者: 聚焦深空   发布时间: 2010-03-17

我装的是GLib-2.12.12 版本 书上写的要装的是这个版本呀。。。
libglade-2.6.1-》Pango-1.16.4-》GLib-2.12.12
上面依赖关系是这么写的! 不知道是否有问题?

作者: wuruiyuan   发布时间: 2010-03-17

确认版本无误,有嫌疑的只剩与工具链不兼容,特别是 gcc。
查过 gutils.h,您的问题应该在宏 G_INLINE_FUNC 上,建议重新编译 glib 运行测试检查与工具链兼容性,测试不过则优先升级 glib。
http://www.mail-archive.com/svn-comm.../msg80248.html

不想完全从头来过,可考虑换 glib gtk gnome libglade 版本,相关库需重编译。

新版 LFS/CLFS 手册对应基本系统,适合新版 BLFS。

作者: 聚焦深空   发布时间: 2010-03-17

引用:
作者: 聚焦深空
确认版本无误,有嫌疑的只剩与工具链不兼容,特别是 gcc。
查过 gutils.h,您的问题应该在宏 G_INLINE_FUNC 上,建议重新编译 glib 运行测试检查与工具链兼容性,测试不过则优先升级 glib。
http://www.mail-archive.com/svn-comm.../msg80248.html

不想完全从头来过,可考虑换 glib gtk gnome libglade 版本,相关库需重编译。

新版 LFS/CLFS 手册对应基本系统,适合新版 BLFS。

我试过新版本的libglade2.6.4,出现的问题和这个一样,其它的还没试过,我会照着你的提示改改看 谢谢!!

作者: wuruiyuan   发布时间: 2010-03-17

参考:
http://bugs.gentoo.org/156475
适度升级到 glib-2.14.5+。

或者直接参考
http://www.linuxfromscratch.org/blfs/view/svn/
http://cblfs.cross-lfs.org/

作者: 聚焦深空   发布时间: 2010-03-17

多亏深空兄的指点,已经解决,终于搞定了困扰我好几天的问题,今天可以睡个好觉^_^ 问题应该出在如聚焦深空所指出的gutil.sh上。 我的GCC版本是4.3.2,glib版本是2.12.12。往glib的gutil.sh打个补丁就可以。

补丁出处 http://bugs.gentoo.org/156475
内容如下:
--- glib2.0-2.13.4.orig/glib/gutils.h 2007-06-16 18:27:37.000000000 +0200
+++ glib2.0-2.13.4/glib/gutils.h 2007-06-16 18:30:08.000000000 +0200
@@ -96,9 +96,14 @@
#ifdef G_IMPLEMENT_INLINES
# define G_INLINE_FUNC
# undef G_CAN_INLINE
-#elif defined (__GNUC__)
-# define G_INLINE_FUNC extern inline
-#elif defined (G_CAN_INLINE)
+#elif defined (__GNUC__)
+# if __GNUC_PREREQ (4,2) && defined (__STDC_VERSION__) \
+ && __STDC_VERSION__ >= 199901L
+# define G_INLINE_FUNC extern __inline __attribute__ ((__gnu_inline__))
+# else
+# define G_INLINE_FUNC extern __inline
+# endif
+#elif defined (G_CAN_INLINE)
# define G_INLINE_FUNC static inline
#else /* can't inline */
# define G_INLINE_FUNC

作者: wuruiyuan   发布时间: 2010-03-17

相关阅读 更多