Pb de link avec VTK4.2.2 et la STL - undefined reference !! [C++] - C++ - Programmation
Marsh Posté le 13-04-2006 à 11:50:03
Si ça peut aider: 
 
$cat /etc/redhat-release  
Red Hat Enterprise Linux WS release 4 (Nahant Update 2) 
 
 
$ uname -a 
Linux lindyn02 2.6.9-22.EL #1 Mon Sep 19 18:20:28 EDT 2005 i686 i686 i386 GNU/Linux 
Marsh Posté le 13-04-2006 à 12:02:55
Je pense que c'est peut-être un problème de version gcc ou libstl mais je ne sais pas trop quoi tenter...
Marsh Posté le 13-04-2006 à 14:15:05
t'as compiler ton vtk en statique déjà ? pourquoi ? tu l'as compilé exactement dans le même environnement ? t'as validé ton vtk avec des programmes de tests ? 
 
pas d'erreur/warning de compilation ?
Marsh Posté le 13-04-2006 à 15:46:11
effectivement j'ai deux libstdc++ : 
 
| lindyn02:/home/quickview/OPNSRC/VTK-4.2.2/Linux2.6.9-22.EL$ ls -l /usr/lib/libstdc++*  | 
 
 
 
J'ai tenté de recompiler VTK en lib dynamique, quelques libs qui sont générées mais à un moment ça part en vrille. Si je fais ldd un des .so générés j'obtiens : 
 
| lindyn02:/home/quickview/OPNSRC/VTK-4.2.2/Linux2.6.9-22.EL$ ldd bin/libvtkCommon.so  | 
 
 
 
 
 
Sino les erreurs à la génération de VTK en .so sont là, je vais chercher comment résoudre ça. 
 
|   | 
Marsh Posté le 13-04-2006 à 16:10:48
bah ça a jamais pu compiler avant, je compreds pas ... faut que tu patchs 
Marsh Posté le 13-04-2006 à 16:21:00
ha bein si ça compilait en statique... mais j'ai trouvé la solution sur le net, faut effectivement patcher... Bon ça continue de compiler, je poste l'info si ça intéresse des gens... 
 
 
| Solution:  | 
 
 
http://www.rz.uni-karlsruhe.de/rd/5427.php
Marsh Posté le 13-04-2006 à 17:30:38
Ca marche avec les lib dynamiques thx 
Marsh Posté le 13-04-2006 à 10:43:35
Bonjour 
 
Je n'arrive pas à faire le link de mon programme avec la lib VTK4.2.2 que j'ai moi-même compilée sous Linux noyau 2.6. Voilà le message d'erreur:
/home/quickview/OPNSRC/VTK-4.2.2/Linux2.6.9-22.EL/bin/libvtkCommon.a(vtkInterpolatedVelocityField.o)(.gnu.linkonce.t._ZNSt14__simple_allocIP10vtkDataSetSt24__default_alloc_templateILb1ELi0EEE10deallocateEPS1_j+0x1d): In function `std::__simple_alloc<vtkDataSet*, std::__default_alloc_template<true, 0> >::deallocate(vtkDataSet**, unsigned int)':
: undefined reference to `std::__default_alloc_template<true, 0>::deallocate(void*, unsigned int)'
/home/quickview/OPNSRC/VTK-4.2.2/Linux2.6.9-22.EL/bin/libvtkCommon.a(vtkInterpolatedVelocityField.o)(.gnu.linkonce.t._ZNSt14__simple_allocIP10vtkDataSetSt24__default_alloc_templateILb1ELi0EEE8allocateEj+0x1d): In function `std::__simple_alloc<vtkDataSet*, std::__default_alloc_template<true, 0> >::allocate(unsigned int)':
: undefined reference to `std::__default_alloc_template<true, 0>::allocate(unsigned int)'
collect2: ld returned 1 exit status
make[2]: *** [/home/quickview/dev/sftvqvui_7.4.1/quickview/Linux2.6.9-22.EL/bin/qvtrace] Error 1
make[2]: Leaving directory `/home/quickview/dev/sftvqvui_7.4.1/quickview/src'
make[1]: *** [qvtrace] Error 2
make[1]: Leaving directory `/home/quickview/dev/sftvqvui_7.4.1/quickview/src'
make: *** [qvtrace] Error 2
g++ --version
g++ (GCC) 3.4.4 20050721 (Red Hat 3.4.4-2)
Je ne sais pas trop ce qui est en cause... Merci si vous avez une idée
Message édité par kaloskagatos le 13-04-2006 à 11:40:01
---------------
« Le hasard, c’est différent de la chance. Parce que la chance, je n'en ai jamais. »