2010-06-16 4 views
2

Hey, je suis un vrai gbc newbee alors excusez-moi si c'est une question idiote. Je veux utiliser opencv dans android et donc essayer de le compiler dans une bibliothèque statique qui est utilisée dans le processus de construction android ndk pour construire une bibliothèque partagée que je compte utiliser pour mon application android. La construction de la bibliothèque de statc fonctionne bien, mais lors de la construction de la bibliothèque partagée, je reçois des plaintes à propos de références non définies. Étant donné que le fichier semble être compilé correctement et inclus j'ai vérifié avec ar -tv et consultez les rubriques suivantes:référence indéfinie et le contenu étrange de la bibliothèque statique

---------  0/0   27304 Jun 16 18:15 2010/ 
---------  0/0   24 Jan 1 01:00 1970 // 
rw-r--r--  501/501  11192 Jun 16 18:13 2010 cxalloc.o/ 
rw-r--r--  501/501  289760 Jun 16 18:13 2010 cxarithm.o/ 
rw-r--r--  501/501  197368 Jun 16 18:13 2010 cxarray.o/ 
rw-r--r--  501/501  335112 Jun 16 18:13 2010 cxcmp.o/ 
rw-r--r--  501/501  422872 Jun 16 18:13 2010 cxconvert.o/ 
rw-r--r--  501/501  127160 Jun 16 18:13 2010 cxcopy.o/ 
rw-r--r--  501/501  191208 Jun 16 18:13 2010 cxdatastructs.o/ 
rw-r--r--  501/501  141536 Jun 16 18:13 2010 cxdrawing.o/ 
rw-r--r--  501/501  170936 Jun 16 18:13 2010 cxdxt.o/ 
rw-r--r--  501/501  29008 Jun 16 18:13 2010 cxerror.o/ 
rw-r--r--  501/501  48304 Jun 16 18:13 2010 cximage.o/ 
rw-r--r--  501/501  23376 Jun 16 18:13 2010 /0 
rw-r--r--  501/501  61024 Jun 16 18:13 2010 cxlogic.o/ 
rw-r--r--  501/501  39520 Jun 16 18:13 2010 cxlut.o/ 
rw-r--r--  501/501  122064 Jun 16 18:14 2010 cxmathfuncs.o/ 
rw-r--r--  501/501  600368 Jun 16 18:14 2010 cxmatmul.o/ 
rw-r--r--  501/501  135824 Jun 16 18:14 2010 cxmatrix.o/ 
rw-r--r--  501/501  140464 Jun 16 18:14 2010 cxmean.o/ 
rw-r--r--  501/501  339224 Jun 16 18:14 2010 cxmeansdv.o/ 
rw-r--r--  501/501  118208 Jun 16 18:14 2010 cxminmaxloc.o/ 
rw-r--r--  501/501  497760 Jun 16 18:14 2010 cxnorm.o/ 
rw-r--r--  501/501  119712 Jun 16 18:14 2010 cxouttext.o/ 
rw-r--r--  501/501  346624 Jun 16 18:14 2010 cxpersistence.o/ 
rw-r--r--  501/501  1688 Jun 16 18:14 2010 cxprecomp.o/ 
rw-r--r--  501/501  86856 Jun 16 18:14 2010 cxrand.o/ 
rw-r--r--  501/501  242768 Jun 16 18:15 2010 cxsumpixels.o/ 
rw-r--r--  501/501  82320 Jun 16 18:15 2010 cxsvd.o/ 
rw-r--r--  501/501  102024 Jun 16 18:15 2010 cxswitcher.o/ 
rw-r--r--  501/501  5968 Jun 16 18:15 2010 cxtables.o/ 
rw-r--r--  501/501  43720 Jun 16 18:15 2010 cxutils.o/ 

Il y a deux lignes que je ne comprends pas, la seconde avec la date 1970 et celui avec \ 0 comme nom de fichier. Je me demandais aussi parce que nm ne retourne rien. Lorsque je tente un randlib je reçois:

ranlib: warning for library: libcxcore.a the table of contents is empty (no object file members in the library define global symbols) 

Le fichier qui devrait figurer au lieu de \ 0 est celui qui définit l'une des fonctions qui ne peuvent être référencés. J'ai essayé ce sous OS X 10.6 et Ubuntu 10.04.

Avez-vous des idées sur ce sujet ou sur ce que je pourrais faire d'autre pour trouver le problème? Peut-être la commande que vous utilisez pour créer la bibliothèque statique est-elle incorrecte?

Répondre

0

Vous devriez utiliser "ar -rs". L'option "s" crée une table d'index. Cela pourrait être votre problème?

+0

il s'avère que cela fonctionne dans Ubuntu, aucune idée quel est le problème dans OS X – berliner

Questions connexes