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

Lazarus Pascal Discussion :

Problème de "linkage" [Lazarus]


Sujet :

Lazarus Pascal

  1. #1
    Membre éprouvé
    Avatar de ChPr
    Homme Profil pro
    Inscrit en
    Septembre 2005
    Messages
    2 022
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 78
    Localisation : France, Val d'Oise (Île de France)

    Informations forums :
    Inscription : Septembre 2005
    Messages : 2 022
    Points : 1 049
    Points
    1 049
    Par défaut Problème de "linkage"
    Bonjour à toutes et à tous,

    J'étais sous Ubuntu 12.04 LTS (32 bits) et Lazarus 1.6 et tout fonctionnait correctement.

    Je suis passé sous Ubuntu 14.04 LTS et je rencontre le problème suivant lors de la compilation d'un simple programme :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    project1.lpr(20,1) Warning: "crti.o" not found, this will probably cause a linking failure
    project1.lpr(20,1) Warning: "crtn.o" not found, this will probably cause a linking failure
    Une petite recherche sur le WEB m'a permis de voir que ces fichiers existent bien et là où ils doivent être.

    Par contre, n'étant pas très doué en anglais, je n'ai pas réussi à comprendre ce qu'il fallait faire pour corriger ce problème.

    Pouvez-vous m'expliquer ce qu'il faut faire.

    Merci d'avance.

    Pierre

  2. #2
    Modérateur
    Avatar de tourlourou
    Homme Profil pro
    Biologiste ; Progr(amateur)
    Inscrit en
    Mars 2005
    Messages
    3 858
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Biologiste ; Progr(amateur)

    Informations forums :
    Inscription : Mars 2005
    Messages : 3 858
    Points : 11 301
    Points
    11 301
    Billets dans le blog
    6
    Par défaut
    Bonjour, il pourrait peut-être suffire d'ajouter leurs chemins à ceux des bibliothèques et objets du projet.
    Delphi 5 Pro - Delphi 11.3 Alexandria Community Edition - CodeTyphon 6.90 sous Windows 10 ; CT 6.40 sous Ubuntu 18.04 (VM)
    . Ignorer la FAQ Delphi et les Cours et Tutoriels Delphi nuit gravement à notre code !

  3. #3
    Membre éprouvé
    Avatar de ChPr
    Homme Profil pro
    Inscrit en
    Septembre 2005
    Messages
    2 022
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 78
    Localisation : France, Val d'Oise (Île de France)

    Informations forums :
    Inscription : Septembre 2005
    Messages : 2 022
    Points : 1 049
    Points
    1 049
    Par défaut
    J'ai ajouté ces chemins pour les bibliothèques et voilà maintenant ce que ça donne :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Compilation du projet - Cible : /home/chp/tmp/project1 : Code de sortie 256 - Erreurs : 1
    /usr/bin/ld : avertissement : /home/chp/tmp/link.res contient des sections de sortie; avez-vous oublié -T?
    /usr/bin/ld : ne peut trouver -lglib
    /usr/bin/ld : ne peut trouver -lgdk
    /usr/bin/ld : ne peut trouver -lgtk
    /usr/bin/ld : ne peut trouver -lgdk_pixbuf
    project1.lpr(20,1) Error: Error while linking
    L'on me suggère que j'ai oublié -T, mais où cela prend-il place ?

    Cordialement.

    Pierre

  4. #4
    Expert confirmé
    Avatar de BeanzMaster
    Homme Profil pro
    Amateur Passionné
    Inscrit en
    Septembre 2015
    Messages
    1 899
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Amateur Passionné
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Septembre 2015
    Messages : 1 899
    Points : 4 346
    Points
    4 346
    Billets dans le blog
    2
    Par défaut
    Salut,
    j'ai déja eu ce problème lors d'une mise à jpur de ma distribution sous linux (changement de version de ces librairies).
    Ces librairies correspondent à gcclib-dev de mémoire. J'avais fixé le problème directement en éditant le fichier fpc.cfg et en remettant les bons chemins.
    Si cela ne marche toujours pas il faudra créer des liens symbolique vers ces fichiers

    Ensuite faut faire attention si tu as des versions 32 et 64bits de ces librairies installées sur ton systeme.
    Autre solution essayer de lancer l'utilitaire de configuration de fpc dont je ne me souviens plus du nom ; c'est quelque chose comme fpcpkg ou dans le genre, mais plus certain

    Sinon, c'est dans les options du projet qu'il faut rajouter le chemin de recherche, le soucis c'est que tu devras le faire pour tous les projets. (paramètre -fi si je me souviens bien)

    A+
    • "L'Homme devrait mettre autant d'ardeur à simplifier sa vie qu'il met à la compliquer" - Henri Bergson
    • "Bien des livres auraient été plus clairs s'ils n'avaient pas voulu être si clairs" - Emmanuel Kant
    • "La simplicité est la sophistication suprême" - Léonard De Vinci
    • "Ce qui est facile à comprendre ou à faire pour toi, ne l'est pas forcément pour l'autre." - Mon pèrei

    Mes projets sur Github - Blog - Site DVP

  5. #5
    Expert éminent sénior
    Avatar de Jipété
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    10 730
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 10 730
    Points : 15 132
    Points
    15 132
    Par défaut
    Yop !
    Citation Envoyé par ChPr Voir le message
    J'ai ajouté ces chemins pour les bibliothèques et voilà maintenant ce que ça donne :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Compilation du projet - Cible : /home/chp/tmp/project1 : Code de sortie 256 - Erreurs : 1
    /usr/bin/ld : avertissement : /home/chp/tmp/link.res contient des sections de sortie; avez-vous oublié -T?
    /usr/bin/ld : ne peut trouver -lglib
    /usr/bin/ld : ne peut trouver -lgdk
    /usr/bin/ld : ne peut trouver -lgtk
    /usr/bin/ld : ne peut trouver -lgdk_pixbuf
    project1.lpr(20,1) Error: Error while linking
    Je savais que je m'étais créé une note sur ce sujet, je te la recopie telle quelle :
    Citation Envoyé par note_jipété
    Si à la compilation de Lazarus (install compo par exemple) on gagne "/usr/bin/ld: cannot find -lGL",
    il faut créer le raccourci qui va bien dans /usr/lib, parce que openGL existe, mais pas là où il faut :
    locate libGL -->
    /usr/lib/i386-linux-gnu/libGL.so.1
    /usr/lib/i386-linux-gnu/libGL.so.1.2
    /usr/lib/i386-linux-gnu/libGLU.so.1
    /usr/lib/i386-linux-gnu/libGLU.so.1.3.08005

    donc
    cd /usr/lib puis
    ln -s /usr/lib/i386-linux-gnu/libGL.so.1.2 libGL.so
    Citation Envoyé par ChPr Voir le message
    L'on me suggère que j'ai oublié -T, mais où cela prend-il place ?
    Alors ça, c'est la question piège avec le message complètement hors des clous et qui ne veut rien dire et pour lequel en ce qui me concerne je n'ai jamais trouvé de solution. Si ma mémoire est bonne, si c'est la seule erreur à la compil (une fois les pbs de chemins réglés), ça ne devrait pas gêner.

    PS : je n'ai pas de fpcpkg (suite suggestion BZ) dans ma machine.
    Il a à vivre sa vie comme ça et il est mûr sur ce mur se creusant la tête : peutêtre qu'il peut être sûr, etc.
    Oui, je milite pour l'orthographe et le respect du trait d'union à l'impératif.
    Après avoir posté, relisez-vous ! Et en cas d'erreur ou d'oubli, il existe un bouton « Modifier », à utiliser sans modération
    On a des lois pour protéger les remboursements aux faiseurs d’argent. On n’en a pas pour empêcher un être humain de mourir de misère.
    Mes 2 cts,
    --
    jp

  6. #6
    Membre éprouvé
    Avatar de ChPr
    Homme Profil pro
    Inscrit en
    Septembre 2005
    Messages
    2 022
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 78
    Localisation : France, Val d'Oise (Île de France)

    Informations forums :
    Inscription : Septembre 2005
    Messages : 2 022
    Points : 1 049
    Points
    1 049
    Par défaut
    Merci Jipété pour ces renseignements.

    Ce matin, je lance Ubuntu et ... je compile mes programmes sans problème ?

    Je ferme Lazarus, cherche les fichiers fpc.cfg et j'en trouve deux :

    /etc/fpc.cfg utilisé hier à 15 h
    /usr/bin fpc.cfg utilisé hier à 17 h

    Donc aucun d'eux n'a été utilisé ce matin. Par ailleurs, aucune trace de "crti.o" et crtn.o" dans ces fichiers.

    Je relance Lazarus et ... ça me refait ce que j'avais hier : ça ne "link" plus !

    Le fichier /usr/bin/fpc.cfg a été utilisé ce matin à 10:24. J'ai refait des compilation (qui n'ont pas "linké") mais la date d'utilisation de ce fichier n'a pas changé.

    Bon, apparemment, problème avec les fichiers crti.o et crtn.o ne se pose plus et j'ai toujours :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Compilation du projet - Cible : /home/chp/tmp/project1 : Code de sortie 256 - Erreurs : 1
    /usr/bin/ld : avertissement : /home/chp/tmp/link.res contient des sections de sortie; avez-vous oublié -T?
    /usr/bin/ld : ne peut trouver -lglib
    /usr/bin/ld : ne peut trouver -lgdk
    /usr/bin/ld : ne peut trouver -lgtk
    /usr/bin/ld : ne peut trouver -lgdk_pixbuf
    project1.lpr(20,1) Error: Error while linking
    J'ai un fichier "ld" (avec une petite flèche en bas du symbole : lien symbolique ?) qui fait 1Mo

    Tu me donnes un exemple du problème que tu as rencontré, mais je ne vois pas, dans mon cas, ce qu'il faut que j'écrive pour former un lien symbolique de "quoi" vers "quoi" (désolé, je suis assez nul en linux).

    Cordialement.

    Pierre

  7. #7
    Expert éminent sénior
    Avatar de Jipété
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    10 730
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 10 730
    Points : 15 132
    Points
    15 132
    Par défaut
    Yop :

    Prenons l'exemple de ta première ligne d'erreur, /usr/bin/ld : ne peut trouver -lglib...

    Donc dans une console root de préférence
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    # locate libglib-2
    /lib/i386-linux-gnu/libglib-2.0.so.0
    /lib/i386-linux-gnu/libglib-2.0.so.0.3200.4
    /usr/lib/i386-linux-gnu/libglib-2.0.a
    /usr/lib/i386-linux-gnu/libglib-2.0.so
    Ensuite, en tapant # ls -Al /lib/i386-linux-gnu/libglib-2* on va avoir
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    lrwxrwxrwx 1 root root      23 mai   29  2013 /lib/i386-linux-gnu/libglib-2.0.so.0 -> libglib-2.0.so.0.3200.4
    -rw-r--r-- 1 root root 1031056 janv.  9  2013 /lib/i386-linux-gnu/libglib-2.0.so.0.3200.4
    et pour l'autre, en tapant # ls -Al /usr/lib/i386-linux-gnu/libglib-2*
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    -rw-r--r-- 1 root root 1351810 janv.  9  2013 /usr/lib/i386-linux-gnu/libglib-2.0.a
    lrwxrwxrwx 1 root root      36 janv.  9  2013 /usr/lib/i386-linux-gnu/libglib-2.0.so -> /lib/i386-linux-gnu/libglib-2.0.so.0
    1re sortie : 1re ligne est un raccourci (la flèche "->" en est l'indicateur, ainsi que le "l" comme "link" dans les attributs à gauche) vers le fichier indiqué en 2de ligne
    2de sortie : 2de ligne est un raccourci vers le fichier dans le dossier /lib vu en 1re sortie.

    Nom : liste_libglib.png
Affichages : 279
Taille : 27,5 Ko
    L'image nous dit : le raccourci en bleu pointe vers le fichier physique

    Si tu constates des différences (raccourcis manquants), la commande magique est ln -s fichier-source nom_à_créer et donc, en reprenant mon exemple et en l'appliquant à la première sortie
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    cd /lib
    ln -s /lib/i386-linux-gnu/libglib-2.0.so.3200.4 libglib-2.0.so.0
    Et pour s'éviter des sueurs froides et des tremblements, supprimer un fichier-raccourci ne supprime pas le fichier-cible.
    Il a à vivre sa vie comme ça et il est mûr sur ce mur se creusant la tête : peutêtre qu'il peut être sûr, etc.
    Oui, je milite pour l'orthographe et le respect du trait d'union à l'impératif.
    Après avoir posté, relisez-vous ! Et en cas d'erreur ou d'oubli, il existe un bouton « Modifier », à utiliser sans modération
    On a des lois pour protéger les remboursements aux faiseurs d’argent. On n’en a pas pour empêcher un être humain de mourir de misère.
    Mes 2 cts,
    --
    jp

  8. #8
    Membre éprouvé
    Avatar de ChPr
    Homme Profil pro
    Inscrit en
    Septembre 2005
    Messages
    2 022
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 78
    Localisation : France, Val d'Oise (Île de France)

    Informations forums :
    Inscription : Septembre 2005
    Messages : 2 022
    Points : 1 049
    Points
    1 049
    Par défaut
    En suivant ce que tu me dis, j'obtiens ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    chp@ubuntu:~$ locate libglib-2
    /lib/i386-linux-gnu/libglib-2.0.so.0
    /lib/i386-linux-gnu/libglib-2.0.so.0.4002.0
    /usr/lib/i386-linux-gnu/libglib-2.0.a
    /usr/lib/i386-linux-gnu/libglib-2.0.so
    /usr/share/gdb/auto-load/libglib-2.0.so.0.4002.0-gdb.py
    chp@ubuntu:~$ ls -Al /lib/i386-linux-gnu/libglib-2*
    lrwxrwxrwx 1 root root      23 sept. 18  2018 /lib/i386-linux-gnu/libglib-2.0.so.0 -> libglib-2.0.so.0.4002.0
    -rw-r--r-- 1 root root 1092536 sept. 18  2018 /lib/i386-linux-gnu/libglib-2.0.so.0.4002.0
    chp@ubuntu:~$ ls -Al /usr/lib/i386-linux-gnu/libglib-2*
    -rw-r--r-- 1 root root 1439604 sept. 18  2018 /usr/lib/i386-linux-gnu/libglib-2.0.a
    lrwxrwxrwx 1 root root      36 sept. 18  2018 /usr/lib/i386-linux-gnu/libglib-2.0.so -> /lib/i386-linux-gnu/libglib-2.0.so.0
    chp@ubuntu:~$
    Je n'ai donc pas l'impression qu'il me manque quelque chose ?

    Entre temps, j'ai arrêté mon PC et je l'ai redémarré ... je lance Lazarus et ... mes programmes se compilent bien: Ouais, super !

    Je ferme Lazarus puis je le relance et je compile mes programmes et là, ça plante ! C'est un truc de dingue.

    Cordialement.

    Pierre

  9. #9
    Expert éminent sénior
    Avatar de Jipété
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    10 730
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 10 730
    Points : 15 132
    Points
    15 132
    Par défaut
    Citation Envoyé par ChPr Voir le message
    Je n'ai donc pas l'impression qu'il me manque quelque chose ?
    On ne dirait pas.
    Tu vois que t'es bon en Linux ! Yakà lire et faire fonctionner ses neurones,

    Citation Envoyé par ChPr Voir le message
    Entre temps, j'ai arrêté mon PC et je l'ai redémarré ... je lance Lazarus et ... mes programmes se compilent bien: Ouais, super !

    Je ferme Lazarus puis je le relance et je compile mes programmes et là, ça plante ! C'est un truc de dingue.
    Par contre, là, je passe. Car à moins de ne plus fermer Lazarus, c'est tendu, et je n'ai pas d'idées pour aller regarder quoi où.

    Juste un truc : quand Linux dit qu'il ne trouve pas un fichier, c'est qu'il n'est pas là où il faut, ou que le chemin n'est pas bon, des choses comme ça.
    Tu pourrais tenter une commande # echo $PATH juste après un redémarrage machine et avant tout lancement Lazarus, puis le lancer, vérifier qu'il est en vrac, relancer la commande et comparer.
    Il a à vivre sa vie comme ça et il est mûr sur ce mur se creusant la tête : peutêtre qu'il peut être sûr, etc.
    Oui, je milite pour l'orthographe et le respect du trait d'union à l'impératif.
    Après avoir posté, relisez-vous ! Et en cas d'erreur ou d'oubli, il existe un bouton « Modifier », à utiliser sans modération
    On a des lois pour protéger les remboursements aux faiseurs d’argent. On n’en a pas pour empêcher un être humain de mourir de misère.
    Mes 2 cts,
    --
    jp

  10. #10
    Membre éprouvé
    Avatar de ChPr
    Homme Profil pro
    Inscrit en
    Septembre 2005
    Messages
    2 022
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 78
    Localisation : France, Val d'Oise (Île de France)

    Informations forums :
    Inscription : Septembre 2005
    Messages : 2 022
    Points : 1 049
    Points
    1 049
    Par défaut
    Le "linkage" est encore plus aléatoire que je ne le pensais.

    Je lance Lazarus et ça passe,

    J'arrête Lazarus et je le relance : ça ne passe plus.

    ...

    En fait, c'est la loterie. Faut que je tombe à un moment où ça veut bien le faire. Je n'arrive pas à trouver un lien de cause à effet.

    Coprdialement.

    Pierre

  11. #11
    Expert éminent sénior
    Avatar de Jipété
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    10 730
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 10 730
    Points : 15 132
    Points
    15 132
    Par défaut
    Ah, je viens de tomber là-dessus par hasard, je ne sais pas si c'est dynamique, mais va jeter un œil dans le menu "Voir", tout en bas "Cœur de l'EDI" puis "à propos de FPC" (et aussi "de l'EDI") et comme c'est du bête texte, "clic droit / Tout sélectionner" "clic droit / Copier" et tu colles dans le bloc-notes, tu pourras te faire un fichier "aprèsreboot.txt" et un autre "aprèsplantage.txt", trop facile pour comparer (même si pénible -- mais il y a des outils).

    EDIT : et c'est marrant, on est synchro question timing !
    Il a à vivre sa vie comme ça et il est mûr sur ce mur se creusant la tête : peutêtre qu'il peut être sûr, etc.
    Oui, je milite pour l'orthographe et le respect du trait d'union à l'impératif.
    Après avoir posté, relisez-vous ! Et en cas d'erreur ou d'oubli, il existe un bouton « Modifier », à utiliser sans modération
    On a des lois pour protéger les remboursements aux faiseurs d’argent. On n’en a pas pour empêcher un être humain de mourir de misère.
    Mes 2 cts,
    --
    jp

  12. #12
    Membre éprouvé
    Avatar de ChPr
    Homme Profil pro
    Inscrit en
    Septembre 2005
    Messages
    2 022
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 78
    Localisation : France, Val d'Oise (Île de France)

    Informations forums :
    Inscription : Septembre 2005
    Messages : 2 022
    Points : 1 049
    Points
    1 049
    Par défaut
    Après un "linkage" réussi, j'ai enregistrer les données que tu m'as dites.

    J'ai alors fait de nouveaux essais, plusieurs fois, avec différents programmes, même des programmes où je n'ai pas donné de chemin pour les fichiers "crti.o" et "crtn.o", et bien pas de chance (si je puis m'exprimer ainsi), ça a toujours fonctionné .

    Peut-être que demain j'aurai plus de (mal)chance ?

    C'est à se flinguer ce truc là !

    Cordialement.

    Pierre

  13. #13
    Expert confirmé
    Avatar de BeanzMaster
    Homme Profil pro
    Amateur Passionné
    Inscrit en
    Septembre 2015
    Messages
    1 899
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Amateur Passionné
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Septembre 2015
    Messages : 1 899
    Points : 4 346
    Points
    4 346
    Billets dans le blog
    2
    Par défaut
    Salut

    Citation Envoyé par ChPr Voir le message
    Merci Jipété pour ces renseignements.

    Ce matin, je lance Ubuntu et ... je compile mes programmes sans problème ?

    Je ferme Lazarus, cherche les fichiers fpc.cfg et j'en trouve deux :

    /etc/fpc.cfg utilisé hier à 15 h
    /usr/bin fpc.cfg utilisé hier à 17 h

    Donc aucun d'eux n'a été utilisé ce matin. Par ailleurs, aucune trace de "crti.o" et crtn.o" dans ces fichiers.

    Je relance Lazarus et ... ça me refait ce que j'avais hier : ça ne "link" plus !

    Le fichier /usr/bin/fpc.cfg a été utilisé ce matin à 10:24. J'ai refait des compilation (qui n'ont pas "linké") mais la date d'utilisation de ce fichier n'a pas changé.
    Ce ne sont pas les fichiers qu'il faut chercher mais les chemain d'accès
    tu devrais trouver un truc dans le genre

    -FI/usr/lib/i386-linux-gnu/4.8 ou
    /usr/lib/gcc/i686-linux-gnu/4.8
    il faut le changer par le bon chemin d'acces par exemple (en 32bit ):

    -FI/usr/lib/i386-linux-gnu
    si cette ligne n'est pas présente rajoute la. A voir donc suivant ton système

    Citation Envoyé par ChPr Voir le message
    Bon, apparemment, problème avec les fichiers crti.o et crtn.o ne se pose plus et j'ai toujours :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Compilation du projet - Cible : /home/chp/tmp/project1 : Code de sortie 256 - Erreurs : 1
    /usr/bin/ld : avertissement : /home/chp/tmp/link.res contient des sections de sortie; avez-vous oublié -T?
    /usr/bin/ld : ne peut trouver -lglib
    /usr/bin/ld : ne peut trouver -lgdk
    /usr/bin/ld : ne peut trouver -lgtk
    /usr/bin/ld : ne peut trouver -lgdk_pixbuf
    project1.lpr(20,1) Error: Error while linking
    J'ai un fichier "ld" (avec une petite flèche en bas du symbole : lien symbolique ?) qui fait 1Mo

    Tu me donnes un exemple du problème que tu as rencontré, mais je ne vois pas, dans mon cas, ce qu'il faut que j'écrive pour former un lien symbolique de "quoi" vers "quoi" (désolé, je suis assez nul en linux).

    Cordialement.

    Pierre
    Ici le fait d'effacer simplement le fichier res et de laisser Lazarus le recréer devrait solutionner le problème si je me souvient bien

    Sinon ben......

    A+
    • "L'Homme devrait mettre autant d'ardeur à simplifier sa vie qu'il met à la compliquer" - Henri Bergson
    • "Bien des livres auraient été plus clairs s'ils n'avaient pas voulu être si clairs" - Emmanuel Kant
    • "La simplicité est la sophistication suprême" - Léonard De Vinci
    • "Ce qui est facile à comprendre ou à faire pour toi, ne l'est pas forcément pour l'autre." - Mon pèrei

    Mes projets sur Github - Blog - Site DVP

  14. #14
    Expert éminent sénior
    Avatar de Jipété
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    10 730
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 10 730
    Points : 15 132
    Points
    15 132
    Par défaut
    Salut, J. !
    Citation Envoyé par BeanzMaster Voir le message
    Ici le fait d'effacer simplement le fichier res et de laisser Lazarus le recréer devrait solutionner le problème si je me souviens bien
    Le recréer ou pas...

    Et ça c'est un brave mystère que je n'ai jamais résolu : des fois il est recréé et des fois non, sans savoir pourquoi (tu te souviens le .zip que j'avais posté il y a 1 ou 2 mois sans .res ? Ben voilà...)
    Il a à vivre sa vie comme ça et il est mûr sur ce mur se creusant la tête : peutêtre qu'il peut être sûr, etc.
    Oui, je milite pour l'orthographe et le respect du trait d'union à l'impératif.
    Après avoir posté, relisez-vous ! Et en cas d'erreur ou d'oubli, il existe un bouton « Modifier », à utiliser sans modération
    On a des lois pour protéger les remboursements aux faiseurs d’argent. On n’en a pas pour empêcher un être humain de mourir de misère.
    Mes 2 cts,
    --
    jp

  15. #15
    Membre éprouvé
    Avatar de ChPr
    Homme Profil pro
    Inscrit en
    Septembre 2005
    Messages
    2 022
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 78
    Localisation : France, Val d'Oise (Île de France)

    Informations forums :
    Inscription : Septembre 2005
    Messages : 2 022
    Points : 1 049
    Points
    1 049
    Par défaut
    Bonjour à toutes et à tous,

    Je reviens sur le problème suivant car je n'arrive plus du tout à compiler quoi que ce soit :
    Citation Envoyé par ChPr Voir le message
    ...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Compilation du projet - Cible : /home/chp/tmp/project1 : Code de sortie 256 - Erreurs : 1
    /usr/bin/ld : avertissement : /home/chp/tmp/link.res contient des sections de sortie; avez-vous oublié -T?
    /usr/bin/ld : ne peut trouver -lglib
    /usr/bin/ld : ne peut trouver -lgdk
    /usr/bin/ld : ne peut trouver -lgtk
    /usr/bin/ld : ne peut trouver -lgdk_pixbuf
    project1.lpr(20,1) Error: Error while linking
    ...
    Tu m'avais suggéré cette solution :
    Citation Envoyé par BeanzMaster Voir le message
    ... j'ai déja eu ce problème lors d'une mise à jour de ma distribution sous linux (changement de version de ces librairies).
    Ces librairies correspondent à gcclib-dev de mémoire. J'avais fixé le problème directement en éditant le fichier fpc.cfg et en remettant les bons chemins.
    Si cela ne marche toujours pas il faudra créer des liens symbolique vers ces fichiers ...
    je ne l'avais pas appliquée car ne sachant pas quel fichier chercher.

    Donc, concrètement dans mon cas, quels sont les fichiers que je dois chercher. Par exemple, pour cette ligne :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    /usr/bin/ld : ne peut trouver -lglib
    Qu'est ce que je dois chercher comme fichier ?

    Merci de votre compréhension pour un gars qui patauge complètement.

    Pierre

  16. #16
    Expert éminent sénior
    Avatar de Jipété
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    10 730
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 10 730
    Points : 15 132
    Points
    15 132
    Par défaut
    Citation Envoyé par ChPr Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    /usr/bin/ld : ne peut trouver -lglib
    Qu'est ce que je dois chercher comme fichier ?
    Avec une espace et le vrai nom ça aurait été plus sympa, j'en conviens. Protocoles historiques…

    Tu dois remplacer "-l" par "lib", et comme il va y en avoir beaucoup, je te conseille d'y aller page par page, car la réponse est dans les premiers, donc locate libglib | more va te donner ça :

    Nom : locate_libglib.png
Affichages : 226
Taille : 46,9 Ko

    Tu vois, dans cette copie d'écran, les deux premières lignes qui montrent des fichiers rangés dans des endroits perso, il s'agit de dll's pour de l'émulation Windows, on s'en fiche complètement, et surement que chez toi elles n'y seront pas.
    Ensuite on a quatre lignes utiles (deux /lib/... et deux /usr/...) puis d'autres qui le sont moins, et dessous la doc qui commence, et plein d'autres choses dont on se fiche aussi.

    À partir de là, dans un autre terminal, ls -Al /chemin/libglib-2* :
    Nom : ls_al-glib.png
Affichages : 225
Taille : 36,9 Ko
    EDIT : me suis un poil trompé dans ma copie d'écran (2 fois la même sortie mais au final ça ne change rien, sauf que j'ai refait l'image)

    Et voilà,
    Il a à vivre sa vie comme ça et il est mûr sur ce mur se creusant la tête : peutêtre qu'il peut être sûr, etc.
    Oui, je milite pour l'orthographe et le respect du trait d'union à l'impératif.
    Après avoir posté, relisez-vous ! Et en cas d'erreur ou d'oubli, il existe un bouton « Modifier », à utiliser sans modération
    On a des lois pour protéger les remboursements aux faiseurs d’argent. On n’en a pas pour empêcher un être humain de mourir de misère.
    Mes 2 cts,
    --
    jp

  17. #17
    Membre éprouvé
    Avatar de ChPr
    Homme Profil pro
    Inscrit en
    Septembre 2005
    Messages
    2 022
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 78
    Localisation : France, Val d'Oise (Île de France)

    Informations forums :
    Inscription : Septembre 2005
    Messages : 2 022
    Points : 1 049
    Points
    1 049
    Par défaut
    Voilà ce que j'ai relevé. Tout ça me semble correct, mais peut-être que j’interprète mal.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    chp@ubuntu:~$ locate libglib
    /lib/i386-linux-gnu/libglib-2.0.so.0
    /lib/i386-linux-gnu/libglib-2.0.so.0.4002.0
    /usr/lib/i386-linux-gnu/libglib-2.0.a
    /usr/lib/i386-linux-gnu/libglib-2.0.so
    chp@ubuntu:~$
     
    chp@ubuntu:~$ ls -Al /lib/i386-linux-gnu/libglib-2*
    lrwxrwxrwx 1 root root      23 sept. 18  2018 /lib/i386-linux-gnu/libglib-2.0.so.0 -> libglib-2.0.so.0.4002.0
    -rw-r--r-- 1 root root 1092536 sept. 18  2018 /lib/i386-linux-gnu/libglib-2.0.so.0.4002.0
    chp@ubuntu:~$ ls -Al /usr/lib/i386-linux-gnu/libglib-2*
    -rw-r--r-- 1 root root 1439604 sept. 18  2018 /usr/lib/i386-linux-gnu/libglib-2.0.a
    lrwxrwxrwx 1 root root      36 sept. 18  2018 /usr/lib/i386-linux-gnu/libglib-2.0.so -> /lib/i386-linux-gnu/libglib-2.0.so.0
    chp@ubuntu:~$
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    /usr/lib/i386-linux-gnu/libgdk-3.so.0
    /usr/lib/i386-linux-gnu/libgdk-3.so.0.1000.8
    chp@ubuntu:~$
     
    chp@ubuntu:~$ ls -Al /usr/lib/i386-linux-gnu/libgdk-3*
    lrwxrwxrwx 1 root root     20 juil.  1  2015 /usr/lib/i386-linux-gnu/libgdk-3.so.0 -> libgdk-3.so.0.1000.8
    -rw-r--r-- 1 root root 668232 juil.  1  2015 /usr/lib/i386-linux-gnu/libgdk-3.so.0.1000.8
    chp@ubuntu:~$
    Peut-être quelque chose de bizarre ici, à partir de la ligne 12 :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
     
    chp@ubuntu:~$ locate libgtk
    /usr/lib/i386-linux-gnu/libgtk-3-0
    /usr/lib/i386-linux-gnu/libgtk-3.so.0
    /usr/lib/i386-linux-gnu/libgtk-3.so.0.1000.8
    chp@ubuntu:~$ 
     
    chp@ubuntu:~$ ls -Al /usr/lib/i386-linux-gnu/libgtk-3*
    lrwxrwxrwx 1 root root      20 juil.  1  2015 /usr/lib/i386-linux-gnu/libgtk-3.so.0 -> libgtk-3.so.0.1000.8
    -rw-r--r-- 1 root root 5553984 juil.  1  2015 /usr/lib/i386-linux-gnu/libgtk-3.so.0.1000.8
     
    /usr/lib/i386-linux-gnu/libgtk-3-0:
    total 40
    -rwxr-xr-x 1 root root  9736 juil.  1  2015 gtk-query-immodules-3.0
    -rwxr-xr-x 1 root root 26628 juil.  1  2015 gtk-update-icon-cache-3.0
    chp@ubuntu:~$
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    chp@ubuntu:~$ locate libgdk_pixbuf
    /usr/lib/i386-linux-gnu/libgdk_pixbuf-2.0.so
    /usr/lib/i386-linux-gnu/libgdk_pixbuf-2.0.so.0
    /usr/lib/i386-linux-gnu/libgdk_pixbuf-2.0.so.0.3000.7
    chp@ubuntu:~$ 
     
    chp@ubuntu:~$ ls -Al /usr/lib/i386-linux-gnu/libgdk_pixbuf-2*
    lrwxrwxrwx 1 root root     29 janv. 12  2018 /usr/lib/i386-linux-gnu/libgdk_pixbuf-2.0.so -> libgdk_pixbuf-2.0.so.0.3000.7
    lrwxrwxrwx 1 root root     29 janv. 12  2018 /usr/lib/i386-linux-gnu/libgdk_pixbuf-2.0.so.0 -> libgdk_pixbuf-2.0.so.0.3000.7
    -rw-r--r-- 1 root root 141340 janv. 12  2018 /usr/lib/i386-linux-gnu/libgdk_pixbuf-2.0.so.0.3000.7
    chp@ubuntu:~$
    Merci pour votre aide.

    Pierre

  18. #18
    Expert éminent sénior
    Avatar de Jipété
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    10 730
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 10 730
    Points : 15 132
    Points
    15 132
    Par défaut
    Citation Envoyé par ChPr Voir le message
    Voilà ce que j'ai relevé. Tout ça me semble correct, mais peut-être que j’interprète mal.
    Tout ça me semble correct également, je penche plus pour un problème de configuration. Quand on relit tes posts précédents, c'est du grand n'importe quoi que tu décris.
    Peut-être un problème Ubuntu ?
    Il a à vivre sa vie comme ça et il est mûr sur ce mur se creusant la tête : peutêtre qu'il peut être sûr, etc.
    Oui, je milite pour l'orthographe et le respect du trait d'union à l'impératif.
    Après avoir posté, relisez-vous ! Et en cas d'erreur ou d'oubli, il existe un bouton « Modifier », à utiliser sans modération
    On a des lois pour protéger les remboursements aux faiseurs d’argent. On n’en a pas pour empêcher un être humain de mourir de misère.
    Mes 2 cts,
    --
    jp

  19. #19
    Membre éprouvé
    Avatar de ChPr
    Homme Profil pro
    Inscrit en
    Septembre 2005
    Messages
    2 022
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 78
    Localisation : France, Val d'Oise (Île de France)

    Informations forums :
    Inscription : Septembre 2005
    Messages : 2 022
    Points : 1 049
    Points
    1 049
    Par défaut
    Citation Envoyé par Jipété Voir le message
    Tout ça me semble correct également, je penche plus pour un problème de configuration. Quand on relit tes posts précédents, c'est du grand n'importe quoi que tu décris.
    Peut-être un problème Ubuntu ?
    Bon, j'ai pris le taureau par les cornes et j'ai foutu à la poubelle tout ce qui ressemblait à Lazarus, fpc et fpc-src : grand ménage.

    J'ai alors téléchargé la version 1.6.4 (j'avais la 1.6.0) et j'ai tout réinstallé : Apparemment, pour l'instant, j'ai recompilé et exécuté quelques-uns des mes programmes et ça fonctionne .

    Cordialement.

    Pierre.

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

Discussions similaires

  1. [Système] Problème de quote
    Par mikebranque dans le forum Langage
    Réponses: 1
    Dernier message: 25/05/2006, 17h38
  2. Problème de quote avec XPath
    Par fadjerx dans le forum XSL/XSLT/XPATH
    Réponses: 5
    Dernier message: 23/03/2006, 14h45
  3. [JS] Problème de quotes pour enregistrer un formulaire.
    Par polnioumane dans le forum Général JavaScript
    Réponses: 10
    Dernier message: 24/10/2005, 17h04
  4. Problème de quotes sous PostGre
    Par Philhz dans le forum PostgreSQL
    Réponses: 1
    Dernier message: 11/07/2004, 13h03
  5. Problème de quote
    Par kennini dans le forum ASP
    Réponses: 4
    Dernier message: 20/11/2003, 09h40

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