《黑客防线》↑在攻与防的对立统一中寻求突破!2001年创刊的黑客技术专业刊物!

设为首页
收藏本站
联系我们
网站导航


技术文章 - 黑客编程 - 浏览文章 - 在Linux下发布程序需要注意版本的软件包
在Linux下发布程序需要注意版本的软件包
http://www.hacker.com.cn/ 2008-7-2 0:15:05
在Linux下发布程序需要注意版本的软件包
Gcc



gcc是GNU编译器集合,包含C、C++、Java、Ada、Forturn等编译器,我们主要使用的是C和C++,它们对应的程序是gcc和g++,为了兼容BSD等UNIX系统,C编译器的程序名还可以是cc或CC。



Linux的一切都是由gcc编译完成的,由于不同主版本的gcc的ABI并不完全相同,因此,如果Linux系统与应用程序采用不同主版本号的gcc进行编译,很可能产生非常多的问题。



查看gcc版本的方法是gcc -v。注意,这里不但可以显示出gcc的版本,还会显示出gcc的编译参数,这也非常重要,即使是相同版本的gcc,在使用不同的编译参数时也会产生兼容问题,比如线程模型。



Glibc



glibc是Linux的标准库函数,封装了Linux的绝大多数的系统调用,相当于Windows的API,所有应用软件都要依赖于它。



他的主版本发生改变时,它所提供的函数行为可能发生加大改变,基于不同glibc版本的程序在混合使用时,经常会出现段错误。



查看glibc的版本的方法有两种。一种是Linux系统的软件包以RPM方式发布,可以利用rpm -q glibc命令查看所安装的glibc是什么版本,文件名后面的数字就是版本数字。另外就是查看/lib目录下下的libc-x.y.z.so文件,x、y、z就标明了主版本、副版本和修正版本。



Kernel



内核是Linux的核心,Linux的一切功能都有内核提供,而不同的内核版本会有很大的变化,比如2.4.x和2.6.x内核区别非常大,可以说它们完全不兼容。另外,即便都是2.6.x的内核,不同的修正版本也会存在较大差异,也很可能产生兼容问题。



产看内核版本的方式是uname -r命令。

所属分类: 黑客编程   所属专题:
共有 246 人次浏览 收藏本页 返回上一页
评论作者:
电子邮件:
评论内容:
投票评价:
验 证 码:
图片包含4个随机字符,点击刷新
请输入上面图片中的随机字符