不支持替换标准 C 头文件。如果仍然希望提供标准头文件的自己的版本,那么建议按以下步骤操作:
将所有替换头文件放置在一个目录中。
在该目录中创建指向每个替换头文件的 .SUNWCCh 符号链接。
在每次调用编译器时使用 -I 指令,搜索包含替换头文件的目录。
例如,假设有 <stdio.h> 和 <cstdio> 的替换。请将文件 stdio.h 和 cstdio 放在目录 /myproject/myhdr 中。在该目录中,运行如下命令:
example% ln -s stdio.h stdio.h.SUNWCCh example% ln -s cstdio cstdio.SUNWCCh |
每次编译时使用 -I/myproject/mydir 选项。
如果要替换任何 C 头文件,就必须成对替换。例如,如果替换 <time.h>,还应该替换 <ctime>。
替换头文件必须与被替换版本具有相同的效果。也就是说,各种运行时库(如 libCrun、libC、libCstd、libc 和 librwtool)是使用标准头文件中的定义生成的。如果替换文件不匹配,那么程序不能工作。