[Kde-devel-es] Qtimer y librerias
hacklet
hack_let at yahoo.es
Fri May 27 20:35:43 CEST 2005
Hola a todos,
tengo 2 pequeños problemas.
Uno es que quiero inplementar una funcion de Qt la cual cada X
milisegundos llame a una funcion mia. Para realizar esto solo se me
ocurren 2 cosas:
1.- Usar alguna funcion tipo Qtimer que llame a mi funcion cada X
tiempo. El problema que veo en hacer esto es que creo que el Qtimer solo
se activa una vez y por tanto solo llama a la funcion una vez, o hay
alguna otra forma de hacerlo??
2.- La segunda opcion que se me ocurre es crear un thread y llamar a mi
funcion la cual genera un bucle sobre si misma parando X tiempo cada vez.
No se cual es la mejor forma de hacerlo. Que opinais?
El otro problema es a la hora de enlazar una libreria statica hecha por
mi. Resulta que tengo hecho un programa y quiero enlazar mi libreria
para usar mis funciones, pues bien, explico como lo hago:
en el directorio $proyecto/lib tengo mi libreria, la cual se llama
libraptor.a, tambien tengo un archivo de cabecera, libraptor.h el cual
solo pone esto:
/****************************/
typedef short I16;
typedef unsigned short U16;
typedef long I32;
typedef unsigned long U32;
/*FUNCIONES*/
I16 Register_Card (U16 CardType, U16 card_num);
I16 DI_ReadPort (U16 CardNumber, U16 Port, U32 *Value);
I16 DO_WritePort (U16 CardNumber, U16 Port, U32 Value);
I16 DIO_PortConfig (U16 CardNumber, U16 Port, U16 Direction);
I16 CTR_Setup (U16 CardNumber, U16 Ctr, U16 Mode, U32 Count, U16 BinBcd);
I16 CTR_Clear (U16 CardNumber, U16 Ctr, U16 State);
I16 CTR_Read (U16 CardNumber, U16 Ctr, U32 *Value);
/***************************/
bien, en mi programa pongo la cabecera: #include <libraptor.h>
y incluyo en las propiedades del proyecto una biblioteca -Iraptor y el
directorio -L$proyecto/lib
pues bien, cuando le doy a compilar, me da el siguiente error:
pci7248.o(.text+0x4e): En la función
`pci7248::pci7248[not-in-charge](QWidget*, char const*)':
: undefined reference to `Register_Card(unsigned short, unsigned short)'
pci7248.o(.text+0xce): En la función
`pci7248::pci7248[in-charge](QWidget*, char const*)':
: undefined reference to `Register_Card(unsigned short, unsigned short)'
collect2: ld devolvió el estado de salida 1
make[1]: *** [../bin/qt_program] Error 1
Alguien sabe que hago mal?
yo lo unico que quiero es enlazar una libreria, en este caso estatica
pero tambien quiero saber como se enlaza una libreria dinamica en mi
programa.
Gracias de antemano
Pablo
More information about the Kde-devel-es
mailing list