IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Bibliothèques C++ Discussion :

bug compilation : scilab c++ et version Ubuntu 12.04 LTS


Sujet :

Bibliothèques C++

  1. #1
    Membre confirmé
    Inscrit en
    Octobre 2007
    Messages
    66
    Détails du profil
    Informations forums :
    Inscription : Octobre 2007
    Messages : 66
    Par défaut 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

  2. #2
    Membre confirmé
    Inscrit en
    Octobre 2007
    Messages
    66
    Détails du profil
    Informations forums :
    Inscription : Octobre 2007
    Messages : 66
    Par défaut
    Personne n'aurait une idée de l'originie de ce problème

    je ne l'ai toujours pas résolu

  3. #3
    Expert éminent

    Femme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2007
    Messages
    5 202
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Juin 2007
    Messages : 5 202
    Par défaut
    Ils ont récemment déplacés les dossiers de lib.
    peut-être que ldconfig pourrait t'aider…

  4. #4
    Membre averti
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2013
    Messages
    23
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Février 2013
    Messages : 23
    Par défaut Dans le même bateau
    Salut,

    je n'ai pas vraiment d'éléments importants à ajouter. Je rencontre à peu près le même problème que toi.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    /usr/local/lib/scilab/libscicall_scilab.so: référence indéfinie vers « getNamedVarType »
    /usr/local/lib/scilab/libscicall_scilab.so: référence indéfinie vers « ExitScilab »
    /usr/local/lib/scilab/libscicall_scilab.so: référence indéfinie vers « getInternalLastErrorValue »
    etc. etc.

    La compilation se déroule très bien sous Fedora.
    Je suis sous Ubuntu 12.10, Scilab 5.4.1 compilé et installé depuis les sources.

    Lorsque que je rajoute les lib qui semblent manquer, les dépendances s'expriment en cascades. Il semble que les libscilabs ne se trouvent pas entre elles..

    ldconfig ne résous pas le problème.

    Je n'ai pas trop d'idée, et je baisse un peu les bras.

  5. #5
    Expert éminent

    Femme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2007
    Messages
    5 202
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Juin 2007
    Messages : 5 202
    Par défaut
    Je te suggère de réinstaller ta suite de compilation, entre autre pour avoir une reconfiguration.

  6. #6
    Membre averti
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2013
    Messages
    23
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Février 2013
    Messages : 23
    Par défaut
    De mon côté, résolue en compilant depuis les sources, puis en make-installant dans un répertoire dans mon home. La version de synaptic est louche.

  7. #7
    Membre confirmé
    Inscrit en
    Octobre 2007
    Messages
    66
    Détails du profil
    Informations forums :
    Inscription : Octobre 2007
    Messages : 66
    Par défaut
    Je l'avais déjà fait et je viens de le refaire.
    Même résultat malheureusement :-(

  8. #8
    Membre confirmé
    Inscrit en
    Octobre 2007
    Messages
    66
    Détails du profil
    Informations forums :
    Inscription : Octobre 2007
    Messages : 66
    Par défaut
    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

  9. #9
    Membre confirmé
    Inscrit en
    Octobre 2007
    Messages
    66
    Détails du profil
    Informations forums :
    Inscription : Octobre 2007
    Messages : 66
    Par défaut
    Je reviens sur mon problème que j'avais laissé de coté pendant quelque temps.

    En désespoir de cause, j'ai tenté de compiler scilab 5.4.1 localement puis de l'installer (make install). Ceci fait, je tente de recompiler mon projet...
    Et ça plante toujours mais l'erreur est différente

    /usr/bin/g++ -Wall -Wextra -lpthread -ldl -m64 -lmpi_cxx -fno-stack-protector -O3 -DNDEBUG CMakeFiles/odinSimDevice.dir/main-sim.cpp.o CMakeFiles/odinSimDevice.dir/simulator.cpp.o -o ../../bin/odinSimDevice -rdynamic -L/usr/local/lib/scilab -L/usr/local/../lib/scilab -L/usr/local/modules/.libs -L/usr/local/modules/api_scilab/.libs -L/usr/local/bin -lomniORB4 -lomnithread -lomniDynamic4 /usr/local/lib/scilab/libscilab.so /usr/local/lib/scilab/libscicall_scilab.so /usr/local/lib/scilab/libscilab-cli.so ../../lib/libodinStubs.so.5.0 ../../lib/libodinCom.so.5.0 ../../lib/libodinScilab.so.5.0 ../../lib/libodinDeviceLayersCore.so.5.0 ../../lib/libodinMath.so.5.0 ../../lib/libodinCom.so.5.0 ../../lib/libodinStubs.so.5.0 -lQtGui -lQtXml -lQtCore -ldl -Wl,-rpath,/usr/local/lib/scilab:/usr/local/../lib/scilab:/usr/local/modules/.libs:/usr/local/modules/api_scilab/.libs:/usr/local/bin:/home/melaine/INRIA/odin/build2/lib:
    /usr/local/lib/scilab/libscihdf5.so.5: undefined reference to `ompi_mpi_cxx_op_intercept'
    /usr/local/lib/scilab/libscihdf5.so.5: undefined reference to `MPI:atatype::Free()'
    /usr/local/lib/scilab/libscihdf5.so.5: undefined reference to `MPI::Comm::Comm()'
    /usr/local/lib/scilab/libscihdf5.so.5: undefined reference to `MPI::Win::Free()'
    J'ai regardé sur le net et en suivant des conseils qui me semblait bon, j'ai ajouté -lmpi_cxx mais ça ne change rien...
    tentative suivante j'ai tenté d'ajouter les lien vers les bibliothèque mpi en dur... ca ne marche toujours pas

    J'ai regardé avec nm la bibliothèque fautive et je le trouve bien
    0000000000000000 T ompi_mpi_cxx_op_intercept

    Bref j'ai toujours besoin d'aide

  10. #10
    Membre confirmé
    Inscrit en
    Octobre 2007
    Messages
    66
    Détails du profil
    Informations forums :
    Inscription : Octobre 2007
    Messages : 66
    Par défaut
    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...

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Faire sa propre version Ubuntu modifiée
    Par drdada dans le forum Ubuntu
    Réponses: 3
    Dernier message: 05/04/2008, 12h53
  2. L’absence du compilateur C dans ma version ubuntu
    Par dot-_-net dans le forum Ubuntu
    Réponses: 10
    Dernier message: 27/03/2008, 14h43
  3. compiler un programme C sous ubuntu
    Par Invité1 dans le forum Linux
    Réponses: 7
    Dernier message: 20/12/2006, 18h14
  4. [FLASH 8 ] bug compilation avec class
    Par CR_Gio dans le forum Flash
    Réponses: 6
    Dernier message: 31/05/2006, 20h55

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo