Bonjour à tous/toutes,

J'essaye de modifier une template C trouvée sur le web. De prendre un simple "hello world" pour Agon Light (programmé en sdcc), et d'en faire un programme à moi.
Mais comme je ne comprend pas grand chose aux fichiers make linux, je requiers un peu d'aide.
Merci d'avance.

Voici le makefile en question:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
 
rwildcard=$(foreach d,$(wildcard $(1:=/*)),$(call rwildcard,$d,$2) $(filter $(subst *,%,$2),$d))
 
SRC=$(call rwildcard,src,*.h) src/main.c
INC=$(call rwildcard,include,*.h) $(call rwildcard,src,*.h)
MOSLIBSRC=$(call rwildcard,include,*.s)
 
CRT=out/crt0.rel
MOSLIB=out/mos.rel
 
CC=sdcc
LD=sdcc
AS=sdasz80
CLD=sdldz80
OBJCPY=sdobjcopy
 
ASFLAGS=-plosgff
CFLAGS=-mez80_z80 -Iinclude/ -Isrc/include/ --reserve-regs-iy --std-c11 --fno-omit-frame-pointer
CLINK=--no-std-crt0 -mez80_z80 --code-loc 100
 
all: a.bin
 
$(CRT): crt/crt0.s
		$(AS) $(ASFLAGS) -o $(CRT) crt/crt0.s
 
$(MOSLIB): $(MOSLIBSRC)
		$(AS) $(ASFLAGS) -o $(MOSLIB) lib/mos.s
 
a.bin: $(SRC) $(INC) $(CRT) $(MOSLIB) 
		$(CC) $(CFLAGS) $(MOSLIB) src/main.c -o out/main.ihx
		$(LD) $(CLINK) $(CRT) $(MOSLIB) out/main.rel -o out/a.ihx
		$(CLD) -nf out/a.lk
		$(OBJCPY) -I ihex -O binary out/a.ihx main.bin
 
clean:
		rm -rf out/*.* out/*  main.bin
EDIT: Pour info, le message d'erreur qui me fait penser que je dois modifier le makefile...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
?ASlink-Warning-Undefined Global '_init' referenced by module 'main'
make: *** [Makefile:29: a.bin] Error 1
EDIT: J'ai modifié ceci, ce qui change le message d'erreur à ce qui suit.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
a.bin: $(SRC) $(INC) $(CRT) $(MOSLIB)
                $(CC) $(CFLAGS) $(MOSLIB) src/main.c -o out/main.ihx
		$(CC) $(CFLAGS) $(MOSLIB) src/func.c -o out/func.ihx
		$(CC) $(CFLAGS) $(MOSLIB) src/vdu.c -o out/vdu.ihx
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
 
bruno@PC-Salon:~/C/miniGraf$ make all
sdcc -mez80_z80 -Iinclude/ -Isrc/include/ --reserve-regs-iy --std-c11 --fno-omit-frame-pointer out/mos.rel src/main.c -o out/main.ihx
 
?ASlink-Warning-Undefined Global '_clear_text_area' referenced by module 'main'
 
?ASlink-Warning-Undefined Global '_VDU' referenced by module 'main'
 
?ASlink-Warning-Undefined Global '_init' referenced by module 'main'
 
?ASlink-Warning-Undefined Global '_change_pen' referenced by module 'main'
 
?ASlink-Warning-Undefined Global '_intro_screen' referenced by module 'main'
 
?ASlink-Warning-Undefined Global '_sleep' referenced by module 'main'
 
?ASlink-Warning-Undefined Global '_clear_all' referenced by module 'main'
 
?ASlink-Warning-Undefined Global '_inkey' referenced by module 'main'
make: *** [Makefile:29: a.bin] Error 1