jueves, 7 de febrero de 2013

Logs NDK



En ocasiones es necesario imprimir algún valor cuando realizamos una librería para ndk, una forma sencilla de realizar esta función es con: __android_log_print, que está incluida en <android/log.h>.
Código de Ejemplo:

#include <android/log.h>
#define APPNAME "spg0x01Log" 
void  printLog()
{
...
...
__android_log_print(ANDROID_LOG_VERBOSE, APPNAME,"Test log value:%d",fooint);
...
...
} 
Al código en Android.mk se tiene que agregar la librería: llog en la opción: LOCAL_LDLIBS. Línea para el archivo Android.mk:
LOCAL_LDLIBS := -llog

martes, 5 de febrero de 2013

Recuperar Archivos PDF


Reparar archivos PDF, en ocasiones se pueden abrir los archivos en una PC pero al pasar el mismo archivo a un smartphone o tratar de abrirlo en otra aplicación se tiene problemas para ver su contenido. Aquí dejo la solución:
Instalar pdftk, está disponible en la mayoría de los repositorios Linux y ofrece muchas operaciones sobre archivos PDF:
[root@0x00000 ~]#yum install pdftk
Ejecutar la recuperación:
[spg0x01@0x00000 ~]$ pdftk pdf_dañado.pdf output pdf_recuperado.pdf

Multiple definition, linkage error C

Error: multiple definition of  `......' .first defined here.
Solución: Agregar al compilar las opciones:  -Xlinker -zmuldefs
Ejemplo:
[spg0x01@0x00000 ~]$ gcc -Xlinker -zmuldefs -o "foobin"  ./common.o ./foo.o ./utils.o 

Sendmail cannot open cf.m4


Cannot open `/usr/share/sendmail-cf/m4/cf.m4': No such file or directory
Solución:
[spg0x01@0x00000 ~]$ yum install sendmail-cf