05.04.2011------查看 glib;gtk+;gcc 版本

[1]

http://www.google.com.hk/search?hl=en&safe=active&q=%E6%9F%A5%E7%9C%8B++glib+%E7%89%88%E6%9C%AC&aq=f&aqi=&aql=&oq=

[2]

http://topic.csdn.net/t/20030924/15/2295246.html

/lib/libc.so.6

ls -l /lib/libc.so.*
看到那些文件链接到哪里,就知道是什么版本的了。

rpm -aq|grep glibc

gcc -v

[3]

http://www.linuxsir.org/bbs/showthread.php?t=244899

dpkg -l gcc

ldd命令也是glibc提供的,所以也可以用ldd --version来查看版本号

[4]

http://space.itpub.net/94384/viewspace-600351

linux下如何查看glibc的版本

上一篇 / 下一篇 2009-05-18 20:25:19 / 个人分类:开源
查看( 753 ) / 评论( 1 ) / 评分( 0 / 0 )

对一下c二进制程序进行ldd,然后直接运行/lib/libc.so.?


root@xxx:/usr/local/memcached/bin# ldd memcached
libevent-1.4.so.2 => /usr/lib/libevent-1.4.so.2 (0x40020000)
libc.so.6 => /lib/libc.so.6 (0x40035000)
libnsl.so.1 => /lib/libnsl.so.1 (0x40153000)
librt.so.1 => /lib/librt.so.1 (0x40169000)
libresolv.so.2 => /lib/libresolv.so.2 (0x4017c000)
/lib/ld-linux.so.2 (0x40000000)
libpthread.so.0 => /lib/libpthread.so.0 (0x4018f000)
root@xxx:/usr/local/memcached/bin# /lib/libc.so.6
GNU C Library stable release version 2.3.4, by Roland McGrath et al.
Copyright (C) 2004 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.
There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE.
Compiled by GNU CC version 3.3.4.
Compiled on a Linux 2.4.29 system on 2005-01-28.
Available extensions:
GNU libio by Per Bothner
crypt add-on version 2.1 by Michael Glad and others
GNU Libidn by Simon Josefsson
linuxthreads-0.10 by Xavier Leroy
BIND-8.2.3-T5B
libthread_db work sponsored by Alpha Processor Inc
NIS(YP)/NIS+ NSS modules 0.19 by Thorsten Kukuk
For bug reporting instructions, please see:
<http://www.gnu.org/software/libc/bugs.html>.

注意跟gcc版本是不一样的, gcc是linux下的c编译器.
root@xxx:/usr/local/memcached/bin# gcc --version
gcc (GCC) 3.3.4
Copyright (C) 2003 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE



另一个方法:
slackware:
# ls /var/log/packages | grep glibc
suse/redhat:
# getconf -a |grep glib -i

[5]

http://wuzongbin2008.blog.163.com/blog/static/214687332010112355945179/

查看gtk、glib版本

Linux OS 2010-12-23 05:59:45 阅读141 评论0
字号:大中小
订阅


从邮件列表看到的查看gtk版本的一些方法:

一、使用外部命令查看安装的gtk库版本
rpm -q glib 查看glib版本

$pkg-config --modversion gtk+ (查看1.2.x版本)

$pkg-config --modversion gtk+-2.0 (查看 2.x 版本)

$pkg-config --version (查看pkg-config的版本)

$pkg-config --list-all |grep gtk (查看是否安装了gtk)

二、使用dl库查看动态链接库中的符号链接:


#include <dlfcn.h>
#include <stdio.h>
int
main(void)
{
void *gtk;
int *maj, *min, *mic;
int status = 1;

gtk = dlopen("libgtk-x11-2.0.so", RTLD_LAZY);
if (!gtk)
return 1;
maj = dlsym(gtk, "gtk_major_version");
min = dlsym(gtk, "gtk_minor_version");
mic = dlsym(gtk, "gtk_micro_version");
if (maj && min && mic) {
printf("%d.%d.%d\n", *maj, *min, *mic);
status = 0;
}
dlclose(gtk);
return status;
}

写好文件后,命名为test.c,
编译
gcc -ldl test.c -o test
运行
./test
输出
2.12.9
三、如果在gtk程序运行中要检测版本,可以使用gtk库中定义的符号常量。

extern const guint gtk_major_version;
extern const guint gtk_minor_version;
extern const guint gtk_micro_version;
extern const guint gtk_binary_age;
extern const guint gtk_interface_age;
gchar* gtk_check_version (guint required_major,
guint required_minor,
guint required_micro);

#define GTK_MAJOR_VERSION
#define GTK_MINOR_VERSION
#define GTK_MICRO_VERSION
#define GTK_BINARY_AGE
#define GTK_INTERFACE_AGE
#define GTK_CHECK_VERSION (major,minor,micro)

[6]

[7]

[8]

[9]

posted @ 2011-05-04 10:58  陳聽溪  阅读(937)  评论(0)    收藏  举报