Compiler errors 如何编译单机版;仅限atoi“;glibc割台 背景

Compiler errors 如何编译单机版;仅限atoi“;glibc割台 背景,compiler-errors,c-preprocessor,glibc,Compiler Errors,C Preprocessor,Glibc,我有glibc源代码,我想基于atoi的实现创建一个独立的库 我当前的方法(运行预处理器)扩展了一些宏,但不是全部宏 例如,这将成功: gcc-10 -E -P -o ATOI.c stdlib/atoi.c 但是,它不会将宏libc_hidden_def(atoi)扩展为atoi.c的最后一行 因此,我在尝试编译时出错,因为符号未定义: $ gcc-10 -c -o ATOI.o ATOI.c stdlib/atoi.c:29:1: warning: return type defaults

我有
glibc
源代码,我想基于
atoi
的实现创建一个独立的库

我当前的方法(运行预处理器)扩展了一些宏,但不是全部宏

例如,这将成功:

gcc-10 -E -P -o ATOI.c stdlib/atoi.c
但是,它不会将宏
libc_hidden_def(atoi)
扩展为atoi.c的最后一行

因此,我在尝试编译时出错,因为符号未定义:

$ gcc-10 -c -o ATOI.o ATOI.c
stdlib/atoi.c:29:1: warning: return type defaults to 'int' [-Wimplicit-int]
   29 | libc_hidden_def (atoi)
      | ^~~~~~~~~~~~~~~
然后,我尝试指定这些定义出现的库,但再次陷入困境。我不明白为什么它找不到
位/floatn.h
,因为我指定了
-I./bits

$ gcc-10 -c -o ATOI.o -I./bits -I./include ATOI.c
In file included from stdlib/atoi.c:18:
./include/stdlib.h:8:10: fatal error: bits/floatn.h: No such file or directory
    8 | #include <bits/floatn.h>
      |          ^~~~~~~~~~~~~~~
compilation terminated.
$gcc-10-c-o-ATOI.o-I./bits-I./include-ATOI.c
在stdlib/atoi.c中包含的文件中:18:
./include/stdlib.h:8:10:致命错误:bits/floatn.h:没有这样的文件或目录
8 |#包括
|          ^~~~~~~~~~~~~~~
编译终止。
问题: 如果有一个
configure
标志(或标志组合)来单独为
atoi
构建一个单独的对象文件,我不会感到惊讶,但我不知道如何做到这一点。这样的一面魔旗存在吗

如果没有,我在编译步骤中遗漏了什么导致gcc找不到位/floatn.h