私はこのcプログラムを持っています:
#include <sys/types.h>
#include "ourhdr.h"
int glob = 6; /* external variable in initialized data */
char buf[] = "a write to stdout\n";
int
main(void)
{
int var; /* automatic variable on the stack */
pid_t pid;
var = 88;
if (write(STDOUT_FILENO, buf, sizeof(buf)-1) != sizeof(buf)-1)
err_sys("write error");
printf("before fork\n"); /* we don't flush stdout */
if ( (pid = fork()) < 0)
err_sys("fork error");
else if (pid == 0) { /* child */
glob++; /* modify variables */
var++;
} else
sleep(2); /* parent */
printf("pid = %d, glob = %d, var = %d\n", getpid(), glob, var);
exit(0);
}
ヘッダーファイル「ourhdr.h」(同じフォルダーにあります)で、err_sys()などのいくつかの関数を定義しました。gcc でコンパイル中に次のエラーが発生します。
In function "main":
undefined reference to "err_sys"
どうすればこれを機能させることができますか? 必要に応じて、ヘッダー ファイルをここに投稿できます。ありがとうございました。
** 編集: ** これは ourhdr.h ファイルです: http://pastebin.com/fMUiG4zU