Sto cercando di incorporare blob binari in un file exe. Sto usando mingw gcc.Incorporamento di blob binari utilizzando gcc mingw
Faccio il file oggetto come questo:
ld -r -b binary -o binary.o input.txt
Ho poi guardo objdump uscita per ottenere i simboli:
objdump -x binary.o
e dà simboli chiamati:
_binary_input_txt_start
_binary_input_txt_end
_binary_input_txt_size
I quindi provate ad accedervi nel mio programma C:
#include <stdlib.h>
#include <stdio.h>
extern char _binary_input_txt_start[];
int main (int argc, char *argv[])
{
char *p;
p = _binary_input_txt_start;
return 0;
}
Poi ho compilare in questo modo:
gcc -o test.exe test.c binary.o
ma ottengo sempre:
undefined reference to _binary_input_txt_start
Qualcuno sa che cosa sto facendo male?
A proposito, non ero a conoscenza di questo metodo di estrazione di dati arbitrari in un eseguibile: bello. –
Cosa offre questo metodo che non è offerto dai file '.rc'? – rubenvb
@rubenvb Accesso facilitato a contntent. Non ha bisogno di chiamate a qualsiasi API di risorse: s – user877329