Une question similaire a été posée ici mais reste sans réponse.
J'ai une implémentation de Levenberg-Marquardt
(téléchargée quelque part) et j'essaie de la compiler mais j'obtiens l'erreur suivante.
gauravloj@vertex:~/Documents/source_code/non-rigid_registration/Gauss_newton/levmar-2.6$ make
[ 87%] Built target levmar
Linking C executable lmdemo
/usr/bin/ld: CMakeFiles/lmdemo.dir/lmdemo.c.o: undefined reference to symbol 'exp@@GLIBC_2.2.5'
//lib/x86_64-linux-gnu/libm.so.6: error adding symbols: DSO missing from command line
collect2: error: ld returned 1 exit status
make[2]: *** [lmdemo] Error 1
make[1]: *** [CMakeFiles/lmdemo.dir/all] Error 2
make: *** [all] Error 2
Sur de nombreux sites, la solution proposée a été d'ajouter des indicateurs (par exemple ici et ici ). Mais aucun d'eux n'a travaillé pour moi.
Voici le Makefile, voici le CMakeLists.txt et voici le CMakeCache.txt.
ldd --version
a donné (Ubuntu EGLIBC 2.19-0ubuntu6.3) 2.19
.
-lm
? Où l'avez-vous ajouté?