Processing dependency lists by make.exe
For example, when target.elf is created from two source files, boot.s and main.c, the dependent
relationship of the files including the temporary files (.o) is shown as Figure 11.1.6.1. Therefore, three
dependency lists for target.elf, boot.o and main.o as the target files are required.
Sample of a make file:
target.elf : boot.o main.o
$(LD) $(LDFLAGS) -o target.elf boot.o main.o $(LIBS)
boot.o : boot.s
$(AS) $(ASFLAGS) -o boot.o boot.s
main.o : main.c
$(CC) $(CFLAGS) main.c
(A) Dependency list for generating target.elf
(B) Dependency list for generating boot.o
(C) Dependency list for generating main.o
* See the above sample make file generated by the IDE for the macro contents referred with $(XXX).
The first make process for this make file is executed as follows:
1. The make.exe checks Dependency list A (target.elf: ...) that appears first in the make file.
2. The dependent files boot.o and main.o are target files in other dependency lists, so the make.exe
evaluates these dependency lists first.
If boot.o or main.o does not exist and the dependency list for generating it is not written in the make
file, an error occurs.
3. The make.exe evaluates Dependency list B (boot.o: ...). Then the command (for assembling boot.s)
is executed to generate boot.o since boot.o does not exist at this time.
If boot.s does not exist at this time, an error occurs since there is no dependency list for generating
boot.s. In this case, create boot.s and locate it into the specified directory (the current directory in this
make file) or delete the descriptions related to boot.s and boot.o.
4. Dependency list C (main.o: ...) is evaluated and main.o is generated similar to Step 3 above.
5. The make process returns to Dependency list A and the command (linkage) is executed since target.
elf has not been generated yet. The target.elf is then generated.
S5U1C17001C ManUal
(C COMPilEr PaCkagE fOr S1C17 faMily) (Ver. 1.5.0)
boot.s
Assembly
boot.o
target.elf
Figure 11.1.6.1 Relationship of files (example)
EPSOn
main.c
Compilation
main.o
Linkage
11 OTHEr TOOlS
11
Tools
(A)
(B)
(C)
11-9
Need help?
Do you have a question about the S5U1C17001C and is the answer not in the manual?