#1 Le 04/04/2013, à 16:59
- L_elfe
bug compilation : scilab c++ et version Ubuntu 12.04 LTS
Bonjour,
depuis que j'ai changé de version de Ubuntu et que je suis passé en version Ubuntu 12.04 LTS, je n'arrive plus à compiler mon projet.
J'ai l'impression qu'il n'arrive plus à trouver les .so de scilab alors qu'avec la version 11.10 tout allait bien.
Mais pas que ...
Linking CXX executable ../../bin/odinSimDevice
/usr/lib/scilab/libsciapi_scilab.so: undefined reference to `stack_'
/usr/lib/scilab/libsciapi_scilab.so: undefined reference to `stackg_'
/usr/lib/scilab/libsciapi_scilab.so: undefined reference to `vGetPointerFromDoubleComplex'
/usr/lib/scilab/libsciapi_scilab.so: undefined reference to `freeArrayOfString'
/usr/lib/scilab/libsciapi_scilab.so: undefined reference to `getExecMode'
../../lib/libodinScilab.so.4.8: undefined reference to `Call_ScilabOpen'
Mais un peu plus loin sur une autre partie du projet j'ai aussi :
/usr/bin/ld: CMakeFiles/odinSupervisor.dir/sqlite/sqlite3.c.o: undefined reference to symbol 'pthread_mutexattr_settype@@GLIBC_2.2.5'
/usr/bin/ld: note: 'pthread_mutexattr_settype@@GLIBC_2.2.5' is defined in DSO /lib/x86_64-linux-gnu/libpthread.so.0 so try adding it to the linker command line
/lib/x86_64-linux-gnu/libpthread.so.0: could not read symbols: Invalid operation
Bref, j'ai du mal à comprendre pourquoi depuis que Ubuntu a apparement revu l'organisation de ses lib, ça ne marche plus.
Un peu d'aide est la bienvenue
Merci,
L_elfe
Hors ligne
#2 Le 04/04/2013, à 21:28
- pingouinux
Re : bug compilation : scilab c++ et version Ubuntu 12.04 LTS
Bonsoir,
Quelle commande utilises-tu pour la compilation ? Il suffit parfois de mettre les librairies à la fin.
Hors ligne
#3 Le 04/04/2013, à 21:35
- L_elfe
Re : bug compilation : scilab c++ et version Ubuntu 12.04 LTS
Bonsoir,
j'utilise CMake pour la génération des mes fichiers de compilation et mon projet compile parfaitement sour Ubuntu 11.10, fedora 1X et windows.
Je pense que le problème est apparu depuis que les bibliothèques sont rangées différement. J'ai déjà essayé d'ajouter quelques bibliothèques manquante manuellement mais ça ne fait que m'indiquer de nouvelles dépendances manquante :-/
Hors ligne
#4 Le 08/06/2013, à 01:46
- L_elfe
Re : bug compilation : scilab c++ et version Ubuntu 12.04 LTS
J'ai toujours mon problème et une piste pour comprendre d'où il vient (enfin)
https://wiki.ubuntu.com/NattyNarwhal/To … Transition
Mais je n'ai pas encore trouvé la solution ... surtout que si je dois ajouter toutes les dépendances pour scilab, je peux en avoir pour une décénnie ...
Si quelqu'un a une solution plus simple, je suis preneur
Merci
L_elfe
Hors ligne
#5 Le 06/11/2013, à 16:32
- L_elfe
Re : bug compilation : scilab c++ et version Ubuntu 12.04 LTS
Je viens d'installer la dernière version d'ubuntu, rien de résolu.
J'ai tenté de compiler scilab en local, c'est encore un échec :-( bref si quelqu'un à des pistes j'en ai besoin et cela devient urgent (j'en ai marre de programmer sous windows... si un jour on m'avait dit que je pourrais plus facilement développer sous windows que sous linux!!!)
Merci d'avance
Mélaine
Hors ligne
#6 Le 21/11/2013, à 15:00
- L_elfe
Re : bug compilation : scilab c++ et version Ubuntu 12.04 LTS
J'ai trouvé la solution (enfin on m'a guidé vers la solution)
This looks like it's caused by the change to the default behaviour of ld a couple of years ago. See for example http://ubuntuforums.org/showthread.php?t=1859400
Libraries need to be listed after modules/libraries that call them, or use the --no-as-needed link flag.
Il me faut maintenant trouver comment ne pas ajouter l'argument "-Wl,--no-as-needed" dans mon CXX_FLAGS de mon projet CMake
Si ça peut servir à d'autres...
Hors ligne