msh.c ファイルで次のように初期化されたグローバル変数を作成しようとしています。
volatile sig_atomic_t sig_int = 0;
これだけでもよさそうです。ただし、proto.h ファイル (このプロジェクトのすべての c ファイルに含まれています) に移動し、次のように入力すると:
extern volatile sig_atomic_t sig_int;
一連のエラーがスローされます。
gcc -c -Wall msh.c arg_parse.c builtin.c expand.c
In file included from arg_parse.c:5:
proto.h:3: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘sig_int’
In file included from builtin.c:13:
proto.h:3: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘sig_int’
In file included from expand.c:11:
proto.h:3: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘sig_int’
make: *** [msh.o] Error 1
この変数をグローバルにするにはどうすればよいですか? ありがとう。