Il problema è qui:
codice:
char rb[]="barcode -b ";
quel buffer è insufficiente per ospitare anche codice più tutta questa roba:
codice:
strcat(rb," n -E -e ean -u mm -g 60x25+1+1");