Teo Derix schrieb:
> Ups (:|
>
> Dann vermute ich mal, der sdcc kennt die Pic Type (noch*) nicht.
>
> *)Manual 4.5.2
>
>
> PS:
> Gerd B. schrieb:
>> Ich würde gerne den xc8 vermeiden.
> Warum?
Laut Doku zu sdcc 3.4.1 :
1 | Supported devices with enhanced cores:
|
2 |
|
3 | 16F: 1703, 1704, 1705, 1707, 1708, 1709, 1713, 1716, 1717, 1718, 1719, 1782, 1783, 1784, 1786, 1787, 1788,
|
4 | 1789
|
bzw:
1 | % gpasm -l | grep 16f1704
|
2 | p16f1704 p16f1705 p16f1707 p16f1708 p16f1709 p16f1713
|
Ich denke nicht, das der SDCC schuld ist, denn das Kompilieren klappt:
1 | sdcc -V --use-non-free -mpic14 -p16f1704 main.c
|
2 | + /usr/local/bin/sdcpp -nostdinc -Wall -D__SDCC_PROCESSOR="16f1704" -DSDCC_PROCESSOR="16f1704" -D__SDCC_PIC16F1704 -obj-ext=.o -D__SDCC_USE_NON_FREE -DSDCC_USE_NON_FREE -D__SDCC=3_4_1 -DSDCC=341 -D__SDCC_REVISION=9092 -DSDCC_REVISION=9092 -D__SDCC_pic14 -DSDCC_pic14 -D__pic14 -D__STDC_NO_COMPLEX__ -D__STDC_NO_THREADS__ -D__STDC_NO_ATOMICS__ -D__STDC_NO_VLA__ -isystem /usr/local/bin/../share/sdcc/include/pic14 -isystem /usr/local/share/sdcc/include/pic14 -isystem /usr/local/bin/../share/sdcc/include -isystem /usr/local/share/sdcc/include -isystem /usr/local/bin/../share/sdcc/non-free/include/pic14 -isystem /usr/local/share/sdcc/non-free/include/pic14 -isystem /usr/local/bin/../share/sdcc/non-free/include -isystem /usr/local/share/sdcc/non-free/include main.c
|
3 | + /usr/local/bin/gpasm -o main.o -c main.asm
|
4 | + /usr/local/bin/gplink -I/usr/local/bin/../share/sdcc/lib/pic14 -I/usr/local/share/sdcc/lib/pic14 -I/usr/local/bin/../share/sdcc/non-free/lib/pic14 -I/usr/local/share/sdcc/non-free/lib/pic14 -I/usr/local/bin/../share/sdcc/lib/pic14 -I/usr/local/share/sdcc/lib/pic14 -I/usr/local/bin/../share/sdcc/non-free/lib/pic14 -I/usr/local/share/sdcc/non-free/lib/pic14 -w -r -o main main.o libsdcc.lib pic16f1704.lib
|
5 | message: Using default linker script "/usr/local/share/gputils/lkr/16f1704_g.lkr".
|
6 |
|
7 | error: Processor family mismatch in "idata.o".
|
8 | error: Processor family mismatch in "_gptrget1.o".
|
9 | error: Processor family mismatch in "_gptrget2.o".
|
10 | error: Missing definition for symbol "_INDF", required by "_gptrget1.o".
|
11 | error: Missing definition for symbol "_FSR", required by "_gptrget1.o".
|
12 |
|
13 | + /usr/local/bin/gplink -I/usr/local/bin/../share/sdcc/lib/pic14 -I/usr/local/share/sdcc/lib/pic14 -I/usr/local/bin/../share/sdcc/non-free/lib/pic14 -I/usr/local/share/sdcc/non-free/lib/pic14 -I/usr/local/bin/../share/sdcc/lib/pic14 -I/usr/local/share/sdcc/lib/pic14 -I/usr/local/bin/../share/sdcc/non-free/lib/pic14 -I/usr/local/share/sdcc/non-free/lib/pic14 -w -r -o main main.o libsdcc.lib pic16f1704.lib returned errorcode 256
|
14 | make: *** [main] Error 1
|
Das Linken eben nicht.
Für das bischen Blinky sollte der sdcc bzw. gputils doch locker reichen
...