All about the OSDev Wiki. Discussions about the organization and general structure of articles and how to use the wiki. Request changes here if you don't know how to use the wiki.
art6050
Posts: 2 Joined: Mon Feb 01, 2016 3:40 pm
Post
by art6050 » Mon Feb 01, 2016 4:06 pm
Hi,
According to
http://wiki.osdev.org/Raspberry_Pi_Bare_Bones tutorial, I did the steps until linking the kernel. I get this error:
Code: Select all
alireza@alireza-VirtualBox:~/Downloads$ arm-none-eabi-gcc -T linker.ld -o myos.elf -ffreestanding -O2 -nostdlib boot.o kernel.o
/home/alireza/opt/cross/lib/gcc/arm-none-eabi/4.9.2/../../../../arm-none-eabi/bin/ld:linker.ld:1: ignoring invalid character `#' in expression
/home/alireza/opt/cross/lib/gcc/arm-none-eabi/4.9.2/../../../../arm-none-eabi/bin/ld:linker.ld:1: syntax error
collect2: error: ld returned 1 exit status
I invested the .c code mentioned in the tutorial and tried to compile it with gcc with this command:
but it was not compiled:
Code: Select all
kernel.c: Assembler messages:
kernel.c:22: Error: expecting operand after ','; got nothing
line 22 is :
Code: Select all
asm volatile("__delay_%=: subs %[count], %[count], #1; bne __delay_%=\n": : [count]"r"(count) :"cc");
Would you please tell me how I can solve the problem?
thepowersgang
Member
Posts: 734 Joined: Tue Dec 25, 2007 6:03 am
Libera.chat IRC: thePowersGang
Location: Perth, Western Australia
Contact:
Post
by thepowersgang » Mon Feb 01, 2016 11:14 pm
1. Where's the # in that linker script coming from? (The wiki page doesn't have one)
2. Compiling ARM code using your system gcc won't work (your system gcc probably targets x86_64, which has a different assembler syntax).