如何为 <stropts.h> 安装库?
How do I install libraries for <stropts.h>?
我是 运行 Kali-Linux (debian+gnome)。编译时出现编译错误:
cc -Wall -g -c -o frag.o frag.c
frag.c:7:10: fatal error: stropts.h: No such file or directory
7 | #include <stropts.h>
| ^~~~~~~~~~~
compilation terminated.
make: *** [<builtin>: frag.o] Error 1
谁能告诉我我缺少什么以及我应该安装什么?
我尝试安装 glibc-sources 但仍然没有成功。
stropts.h
是 Posix STREAMS 扩展的一部分,Linux 从未支持过。 (自 2008 年以来,它也被 Posix 标记为过时,因此它可能会在未来的某些标准修订中被删除。)
Linux 已经有 STREAMS 的第三方实现,但我不知道是否仍然支持其中的任何一个。基于 Linux 的电话应用程序使用的一个包含在 openss7.
中
如其他答案所述,此库未在 Linux 上使用。由于在 Linux 上尝试编译应用程序时出现此问题,可能 #if
设置不正确。
作为解决方法,查看源代码以了解 #include
周围的 #if
是什么,并在编译时将其设置为 false。
例如,如果代码如下:
#if HAVE_STROPTS_H
#include <stropts.h>
#endif
如果您使用的是 cmake 或 gcc,运行 它们与 -DHAVE_STROPTS_H=0
。
我是 运行 Kali-Linux (debian+gnome)。编译时出现编译错误:
cc -Wall -g -c -o frag.o frag.c
frag.c:7:10: fatal error: stropts.h: No such file or directory
7 | #include <stropts.h>
| ^~~~~~~~~~~
compilation terminated.
make: *** [<builtin>: frag.o] Error 1
谁能告诉我我缺少什么以及我应该安装什么? 我尝试安装 glibc-sources 但仍然没有成功。
stropts.h
是 Posix STREAMS 扩展的一部分,Linux 从未支持过。 (自 2008 年以来,它也被 Posix 标记为过时,因此它可能会在未来的某些标准修订中被删除。)
Linux 已经有 STREAMS 的第三方实现,但我不知道是否仍然支持其中的任何一个。基于 Linux 的电话应用程序使用的一个包含在 openss7.
中如其他答案所述,此库未在 Linux 上使用。由于在 Linux 上尝试编译应用程序时出现此问题,可能 #if
设置不正确。
作为解决方法,查看源代码以了解 #include
周围的 #if
是什么,并在编译时将其设置为 false。
例如,如果代码如下:
#if HAVE_STROPTS_H
#include <stropts.h>
#endif
如果您使用的是 cmake 或 gcc,运行 它们与 -DHAVE_STROPTS_H=0
。