我有一个应用程序,这个应用程序使用Glibc,但我想编译而不链接glibc,我需要删除/更改使用它的代码。我在哪里可以获得glibc中定义的函数列表?
谢谢!
答案 0 :(得分:4)
您需要glibc为典型的main
入口点提供启动功能(例如将argc
,argv
设置到正确的位置)。
你需要glibc来调用系统调用(它提供read
,write
,open
,fork
等的“包装”等。
您需要glibc来提供I / O功能,例如printf
,scanf
,getchar
,getc
,fopen
,fclose
,等等
您需要glibc来提供典型的字符串函数,例如strcpy
,strcat
,strtok
,strchr
等。
您需要glibc来提供其他标准功能,rand
,srand
,qsort
,assert
,exit
,setjmp
,{{ 1}}等等。
总之,如果没有glibc,你可能无法编写任何有意义的程序。
当然,除非将glibc替换为提供相同功能的其他库。据说uclibc更加“轻量级”,因为它的目标是嵌入式系统,而内存则更为昂贵。