2011-09-02 3 views
7

J'ai construit avec l'Google Test CMake sur Mac OS X et d'obtenir deux bibliothèques partagées: libgtest.dylib et libgtest_main.dylib. Et maintenant j'ai besoin de les installer tous les deux. Je sais qu'il existe des répertoires de recherche par défaut sur Linux, tels que /usr/lib, /usr/local/lib, etc .. Mais je ne suis pas familier avec Mac OS X et je ne sais pas où placer ces bibliothèques .Quels sont les répertoires de recherche par défaut pour lier une bibliothèque sous Mac OS X

Dans Mac OS X Directory Structure, je trouve qu'il ya trois répertoires de bibliothèques: ~/Bibliothèque, /Bibliothèque et /usr/lib. Et j'ai essayé de placer des bibliothèques gtest dans ces répertoires respectivement et j'ai découvert que seulement /usr/lib fonctionne. Ce que je veux savoir, c'est s'il y a des règles concernant les répertoires de recherche par défaut sur Mac OS X comme sur Linux et Windows.

+0

Je me demande pourquoi le mot "libgtest_main.dylib" n'a pas d'effet en italique car j'ai entré '' * '' avant et après. –

+0

J'ai voté pour la question. Parce que c'est une chose qui est souvent mal faite, ça me fait mal. Voir mon commentaire à la réponse d'aponomarenko ci-dessous. –

Répondre

6

Jetez un oeil sur les valeurs par défaut pour les variables d'environnement utilisées par l'éditeur de liens dyld:

DYLD_FALLBACK_LIBRARY_PATH
      ...
Par défaut, il est réglé sur $ (HOME)/lib:/usr/local/lib:/lib:/usr/lib

This article sur "Déploiement d'une application sur Mac OS X" et other article sur "Les installateurs Mac OS X" peut également aider.

+1

Vous ne déployez certainement pas une bibliothèque dans un «répertoire non utilisateur» comme/lib etc. Habituellement, une application Mac est regroupée dans un répertoire AppName.app. Rien ne vous empêche d'y mettre vos librairies; D Les deux liens sont plutôt bons. –

Questions connexes