我已經設置了以下.h文件: 奇怪未定義的符號錯誤
我不知道爲什麼我得到關於我的C文件中的錯誤。 這裏是我的C文件中的唯一的地方,我用這個函數:
Inc1(int ptr)
{
set_sist(print_var1);
while (1)
{
count1++;
if ((count1 % 20000) == 0)
var1++;
} // while
} /* Inc */
不用說,我在文件的頭部有一個#include "my1.h"
。 錯誤是:
#include <conf.h>
#include <kernel.h>
#include <io.h>
#include <proc.h> // for currpid
#include "my1.h" // uses 'FPTR' type
SYSCALL set_sist(FPTR int1)
{
bla bla bla bla
}
我使用bat文件用下面的代碼編譯的文件:
在模塊hw4.c的功能被另一個C文件正在實施未定義符號_set_sist
e: cd xinu4win\newsrc\hw4 path e:\tc\tc\bin;%path% tcc -I.. -c -DTURBOC initiali.c tcc -I.. -c initiali.c > errs tcc -I.. -c kill.c > errs tcc -I.. -c resched.c > errs tcc -I.. -c setsist.c > errs type errs tlib xinu.lib -+ initiali.obj -+ kill.obj -+ resched.obj -+setsist.obj tlib xinu.lib -+ setsist.obj tcc -I.. hw4.c my1.h ..\xinu.lib hw4 pause
有什麼想法嗎?
你可以發佈構建日誌嗎?我幾乎無法從該圖像中讀取它。 –
將包含'set_sist()'函數**定義**的目標文件與其他文件鏈接起來。包括頭文件是不夠的。 – 2013-06-23 17:13:51
停止發佈圖片,因爲它們很難讀取。 – harper