没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
关于关于Linux下编写和编译程序的几个问题下编写和编译程序的几个问题
当前,虽然Linux还不很普及,在Linux下编写和编译程序的人不多。但是我相信,随着Linux性能的不断提升和逐渐
普及,会有许多自由软件出现,也会有许多人成为Linux下的程序员。我结合自己的经验,介绍一下Linux下编写
和编译程序所要注重的几个问题,奉献给希望为Linux的发展作出贡献的人们。
Linux下怎样编译程序?
大多数Linux程序都是由C语言编写的并由GNU C编译而成。现在GCC是各种发行套件的一部分。有关最新GCC编译器的版
本、文章和补丁请看ftp://ftp.gnu.org/pub/gnu/。
由C++编写的程序必须由GNU C++编译,GNU C++也是各种发行套件的一部分,在以上网址也有最新版本和补丁。
编译2.0.x的内核需要2.7.2.x版本的GCC,如用象GCC 2.8.x, EGCS, or PGCC别的编译器编译内核可能产生不可预想的后
果。
怎样移植其它Unix程序到Linux上?
总得来说,Unix上的程序不需要做改动,只要简单的按照提示就可以移植到Linux上,假如安装过程中出现错误信息,而你又
不知道怎么处理,你可以猜或略去,不过这样产生的程序往往带有bug。所以最好还是问一下有经验的人。
假如要从BSD-ish移植程序,试一试在编译时加上-I/usr/include/bsd 和 ?lbsd命令。
什么是ld.so,从哪可以找到它?
ld.so是动态函数库装载器。过去,使用共享函数库的程序在原代码开头使用约3K的空间来寻找和加载共享函数库,现在,这
段代码被加进了一个非凡共享函数库/lib/ld.so,所有的程序都可以使用该共享库,这样就节省了磁盘空间,而且升级方便。
ld.so可以从以下网址得到tsx-11.mit.edu/pub/linux/packages/GCC/。
怎样升级库函数而不使系统崩溃?
注重:进行此操作应该养成做备份的习惯,因为这项操作很轻易出错。
假如你升级象libc4这样的老函数库,这个过程会变得非常困难。而且你应该在该系统上让libc4和libc5共存,因为,有些老程
序还需要它。升级libc5也一样。
升级动态库的问题常出现在当你移走老的函数库时,用来升级的程序也运行不了了。有许多方法可以解决这个问题。一个方法
就是暂时备份一下运行程序所需函数库,它们一般在/lib/、/usr/lib/、 /usr/local/lib/、或其它的地方,在文件/etc/ld.so.conf中都
有具体记录。
例如,当你升级libc5时,目录/lib/中有如下文件
libc.so.5
libc.so.5.4.33
libm.so.5
libm.so.5.0.9
这些是C函数库和数学库,拷贝它们到文件/etc/ld.so.conf中含有的其它的目录,如/usr/lib/中:
cp -df /lib/libc.so.5* /usr/lib/
cp -df /lib/libm.so.5* /usr/lib/
ldconfig
一定要记住运行ldconfig来升级函数库的配置文件。
文件libc.so.5 和 libm.so.5是实际库文件的链接文件,当你升级的时候,假如老的链接文件存在,新的链接不会产生,除非你
使用CP命令的-f选项。CP的-d选项只复制链接文件,不复制原文件。
假如你需要直接覆盖链接,使用ln命令的选项-f。
例如,拷贝新的库函数覆盖旧的。先对新的函数库做一个链接,然后把函数库和链接一起拷贝到/lib/中,命令如下:
ln -sf ./libm.so.5.0.48 libm.so.5
ln -sf ./libc.so.5.0.48 libc.so.5
资源评论
weixin_38589316
- 粉丝: 6
- 资源: 900
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- Screenshot_20240427_031602.jpg
- 网页PDF_2024年04月26日 23-46-14_QQ浏览器网页保存_QQ浏览器转格式(6).docx
- 直接插入排序,冒泡排序,直接选择排序.zip
- 在排序2的基础上,再次对快排进行优化,其次增加快排非递归,归并排序,归并排序非递归版.zip
- 实现了7种排序算法.三种复杂度排序.三种nlogn复杂度排序(堆排序,归并排序,快速排序)一种线性复杂度的排序.zip
- 冒泡排序 直接选择排序 直接插入排序 随机快速排序 归并排序 堆排序.zip
- 课设-内部排序算法比较 包括冒泡排序、直接插入排序、简单选择排序、快速排序、希尔排序、归并排序和堆排序.zip
- Python排序算法.zip
- C语言实现直接插入排序、希尔排序、选择排序、冒泡排序、堆排序、快速排序、归并排序、计数排序,并带图详解.zip
- 常用工具集参考用于图像等数据处理
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功