-std=c99
を削除してみてください .これにより、POSIX マクロが <features.h>
で定義されなくなります。 、これにより <unistd.h>
が防止されます <getopt.h>
を含めることから .または自分で getopt.h をインクルードしてください。
#include <getopt.h>
を追加
-std=c99
を削除しないでください。 代わりに、#define _POSIX_C_SOURCE 2
を追加します。
-std
を変更する必要はまったくありません または getopt.h
を含める
C99 (またはその他の標準化された) 言語機能を POSIX 関数 (getopt
など) と一緒に使用する場合に行うべき正しいこと ) は _POSIX_C_SOURCE
を定義することです 正しいバージョン (例:200809L
) それぞれのヘッダーを含める前に。詳細については、feature_test_macros(7) を参照してください。