库修炼Linux:如何修改链接库(linux修改链接)
操作Linux系统不仅是专业系统管理,界面操作,脚本开发,还需要熟练地进行链接库的修改。链接库是一种将各种模块或应用程序结合起来以便提供一致性支持的库文件,例如输入输出和数据交换模块。下面我们就来学习如何修改Linux系统的链接库。
首先,需要熟练掌握Linux的butions,例如GCC,GDB,GLIBC等。其次,要切实理解C语言,例如熟记C语言的指令、函数语句等,以便修改链接库时不会存在语法错误和缺少函数声明等4
1.准备相关环境:建立一个文本文件,将其命名为mylseek.c,其内容如下:
#include
#include
int main(){
int fd;
char *p=NULL;
fd=open(“test.txt”,O_RDONLY);
lseek(fd,0,SEEK_SET);
read(fd,p,4);
printf(“%s\n”,p);
close(fd);
return 0;
}
2.编译文件、运行:
编译mylseek.c文件使其成为可执行文件,使用以下命令进行编译:
gcc -o mylseek.o mylseek.c
接下来,以超级权限运行该文件:
sudo ./mylseek.o
3.安装链接库文件:
首先,我们来安装链接库文件:
cp lseek.c /usr/local/lib/lseek.so
然后,使用链接器ld来添加链接文件库:
ld -e main -lc lseek -o mylseek
4.修改链接库:
为了修改链接库,我们使用编辑器vim编辑lseek.c文件,像下面这样修改:
int main(){
int fd;
char *p=NULL;
fd=open(“test.txt”,O_RDONLY);
lseek(fd,1,SEEK_SET);
+ seek(fd,2,SEEK_CUR );
read(fd,p,4);
printf(“%s\n”,p);
close(fd);
return 0;
}
5.重新编译运行:
最后,我们重新编译mylseek.c文件,使用如下命令:
gcc -o mylseek.o mylseek.c
最后,以超级权限运行该文件,查看链接库是否修改成功:
sudo ./mylseek.o
以上就是修改Linux系统链接库的全部过程,通过以上方法可以更加有效地修改链接库,相信你也可以熟练应用到Linux系统中。