3
간단한 운영 체제를 만들려고하는데 아직 부트 로더를 컴파일 할 때 오류가 발생합니다.부트 로더 오류 : 어셈블리의 도움말
error: binary output format does not support external references
이 오류의 의미를 알고 있지만 바이너리 형식으로 컴파일 할 때 외부 참조를 만들 수 있습니까? ? 여기 내 완벽한 코드가있다 :
;Bootloader.s
[BITS 16]
[ORG 0x7C00]
global loader
extern kmain
loader:
call kmain
times 510-($-$$) db 0
dw 0xAA55
그리고 내 커널 :
/*kernel.c*/
void kmain()
{
unsigned char *vidmem = (unsigned char *) 0xb8000;
int i
for(i=1;i<=11;i+=2)
{
vidmem[i]=0x07;
}
vidmem[0]='H';
vidmem[2]='e';
vidmem[4],vidmem[6]='l';
vidmem[8]='o';
videmem[10]='!';
}
내가 컴파일 한 방법 :
nasm -o '/home/myusername/Cubed OS/Bootloader.o' '/home/myusername/Cubed OS/Bootloader.s'
"ORG"지시문을 사용할 수있는 형식은 무엇입니까? – smilinggoomba