問題
C/C++ for Visual Studio Code で標準ヘッダー(unistd.h
)にあるはずの pid_t
について画像のようにidentifier "pid_t" is undefined
が表示される.
だが gcc では問題なくコンパイルされる.
原因
unistd.h
内の pid_t
の定義は _GNU_SOURCE
が定義されていることに依存する.
解決方法
VSCode のコマンドパレット > C/C++: Edit configurations (UI)
から Compiler arguments
に -D_GNU_SOURCE
を追加する.
環境
- Ubuntu 18.04
- gcc (Ubuntu 7.4.0-1ubuntu1~18.04.1) 7.4.0
- C/C++ for Visual Studio Code Version 0.26.3-insiders4: January 16, 2020