Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 如何知道代码的哪一部分使用Glibc_C++_Linux_Glibc - Fatal编程技术网

C++ 如何知道代码的哪一部分使用Glibc

C++ 如何知道代码的哪一部分使用Glibc,c++,linux,glibc,C++,Linux,Glibc,我有一个应用程序,这个应用程序使用Glibc,但我想编译而不链接Glibc,我需要删除/更改使用它的代码。在哪里可以获得glibc中定义的函数列表 谢谢 您需要glibc为典型的main入口点提供启动(例如将argc,argv设置到正确的位置) 您需要glibc来调用系统调用(它提供了读取,写入,打开,分叉,等等的“包装器”) 您需要glibc提供I/O功能,如printf,scanf,getchar,getc,fopen,fclose等 您需要glibc来提供典型的字符串函数,例如strcpy

我有一个应用程序,这个应用程序使用Glibc,但我想编译而不链接Glibc,我需要删除/更改使用它的代码。在哪里可以获得glibc中定义的函数列表


谢谢

您需要glibc为典型的
main
入口点提供启动(例如将
argc
argv
设置到正确的位置)

您需要glibc来调用系统调用(它提供了
读取
写入
打开
分叉
,等等的“包装器”)

您需要glibc提供I/O功能,如
printf
scanf
getchar
getc
fopen
fclose


您需要glibc来提供典型的字符串函数,例如
strcpy
strcat
strtok
strchr
,等等

您需要glibc提供其他标准功能,
rand
srand
qsort
assert
exit
setjmp
longjmp
,等等

总之,如果没有glibc,您可能无法编写任何有意义的程序


当然,除非您使用其他提供相同功能的库来替换glibc。有一个库应该更“轻量级”,因为它面向内存更昂贵的嵌入式系统。

您需要glibc为典型的
main
入口点提供启动(例如将
argc
argv
设置到正确的位置)

您需要glibc来调用系统调用(它提供了
读取
写入
打开
分叉
,等等的“包装器”)

您需要glibc提供I/O功能,如
printf
scanf
getchar
getc
fopen
fclose


您需要glibc来提供典型的字符串函数,例如
strcpy
strcat
strtok
strchr
,等等

您需要glibc提供其他标准功能,
rand
srand
qsort
assert
exit
setjmp
longjmp
,等等

总之,如果没有glibc,您可能无法编写任何有意义的程序


当然,除非您用其他提供相同功能的库来替换glibc,否则应该有一个更“轻量级”的库,因为它的目标是嵌入式系统,在嵌入式系统中,内存更昂贵。

难道你不能把
glibc
从链接行中去掉,看看所有未定义的符号错误都显示在哪里吗?除了没有任何输入或输出的最基本的程序外,几乎所有的程序都需要标准库。你为什么要在没有它的情况下链接呢必须将
glibc
从链接行中取下,然后查看所有未定义的符号错误显示在哪里?除了没有任何输入或输出的最基本的程序外,几乎所有程序都需要标准库。为什么要在没有标准库的情况下链接?