LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
楼主: wide288

glade-2 生成的文件如果想加上编译参数gthread-2.0 怎么办?

[复制链接]
发表于 2004-7-13 17:55:43 | 显示全部楼层
我的意思是

neil@linux neil $ pkg-config gtk+-2.0  --libs gthread
-Wl,--export-dynamic -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgdk_pixbuf-2.0 -lm -lpangoxft-1.0 -lpangox-1.0 -lpango-1.0 -lgobject-2.0 -lgmodule-2.0 -ldl -lglib-2.0 -lgthread -lpthread -lglib  
neil@linux neil $ pkg-config gtk+-2.0  --libs
-Wl,--export-dynamic -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgdk_pixbuf-2.0 -lm -lpangoxft-1.0 -lpangox-1.0 -lpango-1.0 -lgobject-2.0 -lgmodule-2.0 -ldl -lglib-2.0  
neil@linux neil $
 楼主| 发表于 2004-7-13 18:07:58 | 显示全部楼层
bash 06:11pm @wide288$ pkg-config gtk+-2.0 --libs gthread-2.0
-Wl,--export-dynamic -pthread -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgdk_pixbuf-2.0 -lm -lpangoxft-1.0 -lpangox-1.0 -lpango-1.0 -lgobject-2.0 -lgmodule-2.0 -ldl -lgthread-2.0 -lglib-2.0  
bash 06:11pm @wide288$ pkg-config gtk+-2.0 --libs            
-Wl,--export-dynamic -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgdk_pixbuf-2.0 -lm -lpangoxft-1.0 -lpangox-1.0 -lpango-1.0 -lgobject-2.0 -lgmodule-2.0 -ldl -lglib-2.0  

我想我明白你的意思啊。加上它们的不同点,是不是
 楼主| 发表于 2004-7-13 18:18:57 | 显示全部楼层
我在 ./Makefile 和 ./src/Makefile 中都改了。还是没成
PACKAGE_LIBS = -Wl,--export-dynamic -pthread -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgdk_pixbuf-2.0 -lm -lpangoxft-1.0 -lpangox-1.0 -lpango-1.0 -lgobject-2.0 -lgmodule-2.0 -ldl -lgthread-2.0 -lglib-2.0
发表于 2004-7-13 18:26:08 | 显示全部楼层
neil@linux neil $ pkg-config gtk+-2.0 --cflags  gthread
-D_REENTRANT -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/pango-1.0 -I/usr/X11R6/include -I/usr/include/freetype2 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/glib-1.2 -I/usr/lib/glib/include  
neil@linux neil $ pkg-config gtk+-2.0 --cflags
-I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/pango-1.0 -I/usr/X11R6/include -I/usr/include/freetype2 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include  
neil@linux neil $
 楼主| 发表于 2004-7-13 18:49:47 | 显示全部楼层
bash 06:52pm @椤圭3$ pkg-config gtk+-2.0 --cflags gthread-2.0
-DXTHREADS -pthread -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/X11R6/include -I/usr/include/atk-1.0 -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include  
bash 06:53pm @椤圭3$ pkg-config gtk+-2.0 --cflags
-DXTHREADS -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/X11R6/include -I/usr/include/atk-1.0 -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include  

还是没成啊,我把我的代码也打包放上来吧

http://211.92.88.40/~wide288/study/gtk-sct.tar.gz
发表于 2004-7-14 09:28:23 | 显示全部楼层
是不是你加完后又运行了./configure把Makefile覆盖了,
直接改Makefile.in然后运行一下./configure试试
或者改Makefile.am然后aclocal, automake, autoconf, ./configure
发表于 2004-7-14 22:01:07 | 显示全部楼层
在PACKAGE_CFLAGS一行的最后加上`pkg-config gthread-2.0`,当然也可以直接将``中的结果直接贴进去。
 楼主| 发表于 2004-7-15 07:25:50 | 显示全部楼层
谢谢两位了,我最后定了,没用 glade 的东西,把界面部分拿了出来,自己写的 makefile 还不错能用。
现在已经发布了,0.1软件,在软件版和我的主页上。

http://211.92.88.40/~wide288/default.php
发表于 2004-7-16 11:40:24 | 显示全部楼层
wide288的帖子人气都很高阿
发表于 2004-7-19 09:47:03 | 显示全部楼层
这样做,等于什么都没做。。。。。

到最后放弃了,唉.........

我都不会用glade-2生成代码的,我只用它生成的.glade文件,这个文件就象是vc下的res文件一样的,用一个库libglade可以在代码中载入.glade文件中的构件资源。

好处太多了,主要的是,如果你想修改界面的话,只要修改那个.glade文件就行了,源代码不用动,

linux下的项目管理工具AutoTools toolkits,是很好用的。

对于这个gthread库的问题,它是可以受pkg-config管理的,有.pc文件在/usr/lib/pkgconfig/ 下,只要改两个地方,就可以了,
1.在configure.ac中,使用
PKG_CHECK_MODULES([PACKAGE], ["gtk+-2.0 gthread-2.0"]) //可以再加别的库
AC_SUBST([PACKAGE_CFLAGS])
AC_SUBST([PACKAGE_LIBS])

2,在源码目录下的Makefile.am中
INCLUDES=\
       @PACKAGE_CFLAGS@

package_LDFLAGS=@PACKAGE_CFLAGS@
package_LDADD=@PACKAGE_LIBS@

然后aclocal&autoheader&automake -a -c -f&&automake&autoconf&./configure --prefix=/usr --sysconfdir=/etc&make
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表