He aquí un buen truco que uso con un compilador cruzado gcc-arm; incluyendo un archivo a través de un archivo de lenguaje ensamblador. En este ejemplo, es el contenido del archivo public_key.pem
que estoy incluyendo.
pubkey.s
.section ".rodata"
.globl pubkey
.type pubkey, STT_OBJECT
pubkey:
.incbin "public_key.pem"
.byte 0
.size pubkey, .-pubkey
correspondiente pubkey.h
#ifndef PUBKEY_H
#define PUBKEY_H
/*
* This is a binary blob, the public key in PEM format,
* brought in by pubkey.s
*/
extern const char pubkey[];
#endif // PUBKEY_H
Ahora las fuentes de C pueden incluir pubkey.h
, compilar el pubkey.s
con gcc y vincularlo a su aplicación, y ahí tienes. sizeof(pubkey)
también funciona.
¿Sobre qué plataforma? –
@OliCharlesworth: me estoy ejecutando en un RTOS incorporado patentado, usando Eclipse 3.0.2 – theanine
Afortunadamente, sabrá que la respuesta a este problema depende ** completamente ** de los detalles de la cadena de herramientas que está utilizando (compilador, enlazador, formato ejecutable, etc.). Así que haría bien en agregar tantos detalles como sea posible a su pregunta. –