我刚刚使用标题组织了我的代码,但正如我所做的那样,我收到了一个警告,在链接时变成了错误。
我有一个代码(使用标题内的函数)test.c
,如下所示:
#include "test1.h"
/* Some code */
main()
{
Testing();
}
我的test1.h
标题是这样的:
void Testing();
void print(int, int, int, const char*);
并且在test1.c
void Testing()
{
print(0xF9, 27, 5, "\xC9\\xBB");
}
void print(int colour, int x, int y, const char *string)
{
volatile char *video=(volatile char*)0xB8000 + y*160 + x*2;
while(*string != 0)
{
*video=*string;
string++;
video++;
*video=colour;
video++;
}
}
当我尝试编译代码时,我得到了这个:
ubuntu@eeepc:~/Development/Test$ gcc -o test.o -c test.c -Wall -Wextra -nostdlib -nostartfiles -nodefaultlibs
test.c:在函数'main'中:
test.c:11:警告:隐式函数“测试”的声明<br> ubuntu@eeepc:~/Development/Test$
当时这只是一个简单的警告,但是当我尝试链接它时......
ubuntu@eeepc:~/Development/Test$ ld -T linker.ld -o kernel.bin loader.o test.o
test.o: In function Testing'main':
test.c:(.text+0xfc): undefined reference to
我需要做什么?