Portál AbcLinuxu, 25. dubna 2024 13:50


Dotaz: piklab s sdcc, nefunkční překlad knihovny

9.11.2010 14:42 pou | skóre: 18
piklab s sdcc, nefunkční překlad knihovny
Přečteno: 322×
Odpovědět | Admin
Dobrý den, programuju pic v piklabu za použidí Small Device C Compiler, potřebuji využívat některé knihovní funkce(např strcpy....) na začátek programu dam include dotyčné knihovny (např. #include "<"string.h">").
Kompilace zřejmně proběhne v pořádku až linker hlasí chybu:
sdcc -mpic14 -p16f628a -V --debug -I/home/pou/pic/ -c funkce1.c + "/usr/bin/sdcpp" -nostdinc -Wall -I"/home/pou/pic/" -obj-ext=.o -DSDCC_MODEL_SMALL -DSDCC=290 -DSDCC_REVISION=5416 -DSDCC_pic14 -D__pic14 -DSDCC_PROCESSOR="16f628a" -isystem "/usr/bin/../share/sdcc/include/pic14" -isystem "/usr/share/sdcc/include/pic14" -isystem "/usr/bin/../share/sdcc/include" -isystem "/usr/share/sdcc/include" -isystem "/usr/bin/../share/sdcc/include/pic" -isystem "/usr/share/sdcc/include/pic" "funkce1.c" sdcc -mpic14 -p16f628a -V --debug -Wl-c -Wl-m -I/home/pou/pic/ -ofunkce1.hex funkce1.o using default linker script "/usr/share/gputils/lkr/16f628a.lkr" missing definition for symbol "_strcpy", required by "funkce1.o" + "/usr/bin/gplink" -I"/usr/bin/../share/sdcc/lib" -I"/usr/share/sdcc/lib" -I"/usr/bin/../share/sdcc/lib/pic" -I"/usr/share/sdcc/lib/pic" -c -m -w -r -o funkce1.hex funkce1.o libsdcc.lib pic16f628a.lib *** Ukončeno se zprávou: 1 ***
Prosím o nějakou radu, děkuji
Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

10.11.2010 18:29 pou | skóre: 18
Rozbalit Rozbalit vše Re: piklab s sdcc, nefunkční překlad knihovny
Odpovědět | | Sbalit | Link | Blokovat | Admin
Je to asi dost nepřehledné, až teď mě napadlo zkompilovat to ručně s SDCC
$sdcc --debug -mpic14 -p16f628a funkce1.c
message: using default linker script "/usr/share/gputils/lkr/16f628a.lkr"
error: missing definition for symbol "_strcpy", required by "funkce1.o"

kod ve funkci1.c je tady :
#include "<"pic16f628a.h">"
#include "<"string.h">"
typedef unsigned int word;
word at 0x2007 CONFIG = _WDT_OFF & _PWRTE_OFF & _INTOSC_OSC_CLKOUT & _MCLRE_ON & _BODEN_ON & _LVP_ON & _DATA_CP_OFF & _CP_OFF;
void main() "{"
char str1[20];
strcpy(str1,"ahoj");
send232(str1);
for(;;)"{"
"}"

Budu rád za každou radu!

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.