[Jderobot-dev] [UAV] Error uvccapture

Oscar Garcia oscar.robotica en linaresdigital.com
Mar Oct 30 14:30:51 CET 2012


El 29/10/2012 20:37, Livio Calvo escribió:
> Escribo en consola: gcc `pkg-config --cflags opencv` `pkg-config --libs
> opencv` -o webcam_jpeg webcam_jpeg.c
>
> Obtengo estos errores, parece que me falte algo por instalar.
>
> webcam_jpeg.c: In function ‘main’:
> webcam_jpeg.c:29:2: error: unknown type name ‘CvCapture’
> webcam_jpeg.c:31:32: error: ‘CV_CAP_ANY’ undeclared (first use in this
> function)


A parte de mi error en las cabeceras he descubierto, mediante una 
conversación privada con Livio, que en Ubuntu 12.04 sólo compila si se 
le "da la vuelta" al comando de compilación:

gcc `pkg-config --cflags opencv` `pkg-config --libs opencv` -o 
webcam_jpeg webcam_jpeg.c

webcam_jpeg.c: In function ‘main’:
webcam_jpeg.c:36:38: warning: cast to pointer from integer of different 
size [-Wint-to-pointer-cast]
/tmp/ccCG64tN.o: In function `cvDecRefData':
webcam_jpeg.c:(.text+0xa32): undefined reference to `cvFree_'
webcam_jpeg.c:(.text+0xaba): undefined reference to `cvFree_'
/tmp/ccCG64tN.o: In function `cvGetRow':
webcam_jpeg.c:(.text+0xbd1): undefined reference to `cvGetRows'
/tmp/ccCG64tN.o: In function `cvGetCol':
webcam_jpeg.c:(.text+0xbff): undefined reference to `cvGetCols'


Tras instalarme una máquina virtual con Ubuntu 12.04 y hacer varias 
combinaciones para que se arreglara el problema de referencias 
indefinidas que le aparecían a Livio compruebo que:

(no funciona) gcc `pkg-config --cflags opencv` `pkg-config --libs opencv` -o webcam_jpeg webcam_jpeg.c

(si funciona) gcc webcam_jpeg.c -o webcam_jpeg `pkg-config --cflags opencv` `pkg-config --libs opencv`



De manera resumida se puede usar:

gcc webcam_jpeg.c -o webcam_jpeg `pkg-config --cflags --libs opencv`


Espero que os sirva de ayuda si os ocurre a vosotros. Un saludo.


More information about the Jde-developers mailing list