Incorporando blobs binários usando gcc mingw

Estou tentando incorporar blobs binários em um arquivo exe. Estou usando o mingw gcc.

Eu faço o arquivo de objeto assim:

ld -r -b binary -o binary.o input.txt

Em seguida, procuro a saída objdump para obter os símbolos:

objdump -x binary.o

E fornece símbolos com o nome:

_binary_input_txt_start
_binary_input_txt_end
_binary_input_txt_size

Em seguida, tento acessá-los no meu programa 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;
}

Então eu compilo assim:

gcc -o test.exe test.c binary.o

Mas eu sempre entendo:

undefined reference to _binary_input_txt_start

Alguém sabe o que estou fazendo de errado?

questionAnswers(4)

yourAnswerToTheQuestion