Hallo,
Ich möchte mit einem Microcontroller STM32F4 über UART kommunizieren, was bereits funktioniert. Jetzt soll noch eine CRC checksumme mitgeschickt werden. Der STM32 benutzt einen CRC "Code" (hardwareseitig), der mit dem Code des zlib Pakets kompatibel ist. Daher möchte ich gerne den crc32 Befehl aus dem zlib Paket benutzen.
Beim kompilieren bekomme ich dann aber leider folgenden Fehler:
Code
/tmp/ccMI9ZcV.o: In function `crc_calc':
pidata.c:(.text+0x3bc): undefined reference to `crc32'
pidata.c:(.text+0x3e8): undefined reference to `crc32'
collect2: ld returned 1 exit status
Hier der entsprechende C-Code:
C
#include <stdint.h>
#include <stdio.h>
#include <zlib.h>
uint32_t crc_calc(uint8_t* buffer, uint16_t size){
int i;
uint32_t crc = crc32(0L, Z_NULL, 0);
for (i = 0; i < size; ++i)
{
crc = crc32(crc, buffer + i, 1);
}
printf("CRC32 value is: %lu\n", crc);
return(crc);
}
Alles anzeigen
Das zlib Paket ist natürlich installiert und die zlib.h liegt auch im Verzeichnis usr/include. Hat eventuell jemand eine Idee, woher der Fehler kommt?
Viele Grüße
Michael