Hi, I am trying to compile and build an ARM assembley program for the Samsung S3C4510B microprocessor but i keep getting the linking error:
compiling RTX_Conf_S3C2440.c... assembling Text1.s... linking... 10.axf: Error: L6320W: Ignoring --entry command. Cannot find argument 'Reset_Handler'. 10.axf: Warning: L6320W: Ignoring --first command. Cannot find argument 'Reset_Handler'. Target not created
I belive i need a startup find to be included within the compilled files in my uVision project workspace but i cannot find an c4510 startup.s file anywhere.
This is a copy of a very basic test program i constructed. It assembles correctly, it just wont link.
AREA TEST, CODE ENTRY MOV r1, #1 END
Many thanks, Chris
Your "application" is too small and too simple. Define a handler for the reset vector, so the processor has anywhere to start processing your code.
And do not believe that your ARM will magically stop running just because you have en AND declaration in your assembler code. That just tells the assembler that the source file ends there. Your ARM processor would - if you managed to get past the linker step - run wild. It would take whatever is in memory (0xff, 0xff, 0xff, ...) and treat as real instructions...
Look at startup files for other processors. Most processor manufacturers also have application notes and demo code available.
Just remember: Your ARM is not a PC. It does not run PC programs, where the control returns back to any OS when the program ends. Your program _is_ the OS for the ARM processor, so your program has to be complete or nothing will work!