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

Linux Discussion :

Problème avec l'option -static de gcc


Sujet :

Linux

  1. #1
    Membre à l'essai
    Inscrit en
    Janvier 2003
    Messages
    18
    Détails du profil
    Informations forums :
    Inscription : Janvier 2003
    Messages : 18
    Points : 18
    Points
    18
    Par défaut Problème avec l'option -static de gcc
    Bonjour,

    J'utilise une bibliothèque dénichée sur freshmeat (libssh) afin d'accéder à un serveur SSH dans une application écrite en C.
    Le problème est que c'est une bibliothèque partagée (so) et il serait préférable que mon application n'en dépende pas. C'est pourquoi j'ai tenté une compilation avec l'option "-static" de gcc.
    La compilation réussie et j'obtiens un exécutable plus gros .... jusque là tout est normal.

    Mais lorsque je veux l'exécuter j'obtiens un joli message d'erreur "No such file or directory".

    J'avoue ne pas comprendre d'où vient cette erreur.

    Autre question : Est-il possible de transformer une bibliothèque dynamique en son équivalent statique ?

    Merci d'avance.

  2. #2
    Membre habitué
    Avatar de zdra
    Profil pro
    Inscrit en
    Mars 2002
    Messages
    164
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2002
    Messages : 164
    Points : 187
    Points
    187
    Par défaut
    Salut, j'suis l'auteur de libssh j'emprunte le compte de zdra pour te répondre
    si tu veux avoir une librairie statique, ce n'est pas comme ca que tu dois faire : tu dois compiler ton programme avec la version statique de la lib, en .a
    pour l'obtenir, cette version statique, fais (dans le repertoire libssh/ - celui qui contient tous les fichiers .c)
    make libssh.a
    ensuite tu copies cette librairie dans /usr/lib/ ou /usr/local/lib
    ensuite si tu compiles ton propre programme, tu auras la libc et libssl chargées dynamiquement mais pas libssh. si tu fais -static tu vas obtenir un gros binaire mais qui fera ce que tu veux.

    btw n'hésite pas a donner un commentaire sur le projet

    Aris (aris@0xbadc0de.be)

  3. #3
    Membre à l'essai
    Inscrit en
    Janvier 2003
    Messages
    18
    Détails du profil
    Informations forums :
    Inscription : Janvier 2003
    Messages : 18
    Points : 18
    Points
    18
    Par défaut
    En effet, si j'avais jeté un coup d'oeil au makefile, j'y aurais trouvé la cible libssh.a


    Sinon pour ce qui est de la libssh, j'en suis très satisfait.
    En effet, j'ai besoin de dialoguer avec un serveur SSH et j'ai peu de temps pour réaliser l'application. Ce qui a retenu mon attention est sa simplicité d'utilisation. Ce genre de projet est un peu trop rare à mon goût. Je me voyais déja devoir décortiquer OpenSSH ...

    Toutes les fonctionnalités sont présentes et il devient simple d'utiliser le protocole SSH.
    Si je peux me permettre une remarque, je trouve que la documentation est un peu "juste".
    Sinon je ne peux qu'adresser mes encouragements et mes félicitations.

    Merci.

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

Discussions similaires

  1. Recherche avec Locate option lopartialKey
    Par jeje.r dans le forum Bases de données
    Réponses: 4
    Dernier message: 21/12/2022, 11h56
  2. Charger un module automatiquement avec des options debian
    Par ZiMo dans le forum Administration système
    Réponses: 4
    Dernier message: 22/12/2005, 15h22
  3. tooltip avec balise option
    Par pittacos dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 29/08/2005, 11h14
  4. [Debutant] Problème avec des membres static
    Par Mathieu.J dans le forum Débuter
    Réponses: 4
    Dernier message: 24/08/2005, 18h09
  5. [socket] Problème avec les options
    Par gangsoleil dans le forum Développement
    Réponses: 3
    Dernier message: 13/07/2005, 14h11

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