Comment faire pour installer une bibliothèque partagée sur Ubuntu Linux?

J'ai de la difficulté bibliothèques partagées sur mon Ubuntu 10.04. Je expirienced à plusieurs reprises dans les derniers mois, lu beaucoup de choses sur l'installation de libs, mais il me semble manquer le point.

En commençant par le répertoire de code source, je exécutez les commandes suivantes:

  1. make
    Fonctionne proprement, sans aucune erreur
  2. sudo make install
    Semble fonctionner correctement, se termine par:
    cp toto..0.1 /usr/local/lib/
    rm-f /usr/local/lib/foo.donc
    ln -s /usr/local/lib/foo..0.1 /usr/local/lib/foo.donc
  3. sudo ldconfig
    S'exécute sans sortie

Lors de l'écriture d'un fichier makefile, je ne peux pas l'adresse de la lib par son nom, mais par son chemin d'accès:
Pas de travail: -lfoo
De travail: -L/usr/local/lib/foo.so

Le problème reste le même, peu importe ce que lib j'essaie de l'installer.

Ce qui me manque ici? Ou que puis-je faire pour le savoir?

Favoriser en particulier ne pas utiliser autoconf automake ou, si il n'y a pas de scénario dans lequel vous devez exécuter ces commandes... Avez-vous lu le Boost Guide de démarrage?
boost peut facilement être ajouté dans Ubuntu en utilisant apt-get, ou normal de votre gestionnaire de paquets. Chercher des paquets libboost-dev, ou libboost-all-dev. Pas besoin de les installer manuellement, sauf si vous avez une version spécifique que vous avez un lien à l'encontre de ce qui est différent de la version fournie par votre référentiel.
Je ne pouvais pas utiliser le gestionnaire de paquet, parce que déjà brisé gestionnaire de paquet d'installation de boost et j'en avais besoin rapidement et oui, j'ai lu la prise en main, mais sa il y a longtemps. boost juste shold être un exemple, les autres parties de l'installation a fonctionné.
Alors que le reste de l'GNU/Linux monde a tendance à utiliser automake/autoconf, Boost ne fonctionne pas. Donc Boost est pas juste un exemple, car il est construit par un tout système de construction plus que tout le reste, et donc suit les différentes procédures de construction.
Coup de pouce, de noix, de l'oublier, devraient avoir été qt pas de coup de pouce. Mais je ne me suis mélangé les procédures d'installation. L'effet reste le même. Je ne peux pas utiliser boost libnames dans mon makefile.

OriginalL'auteur user918545 | 2011-08-29