Comment installer Boost sur MacOS?


174

Comment installer Boost sur MacOS? Pour le moment, je ne trouve pas bjam pour Mac.


1
Vous pouvez toujours essayer comme "recherche de port <wwhat>" - dans votre cas boost - en cas de doute.
gustafbstrom

J'ai utilisé à la fois macports et brew. Je les utilise ensemble lorsque cela est nécessaire ( sudo port -t install X) mais je préfère brasser aux macports dans la plupart des cas.
Jacksonkr

Réponses:


152

Téléchargez MacPorts et exécutez la commande suivante:

sudo port install boost 

2
si vous préférez exécuter les choses via root sudo -s /opt/local/bin/port install boost
Pungs

2
Je ne crois pas que macports soit mort dans la mesure où il est tombé en désuétude.
Josef Salyer

3
Et faire brew install boost boost-python?
ilciavo

Je préfère macports à brew, avec brew, tout le monde peut gifler une formule de merde et casser beaucoup de bibliothèques.
μολὼν.λαβέ

1
Comment cela est-il accepté sur la réponse Homebrew? Cela n'a aucun sens pour moi ...

263

Vous pouvez obtenir la dernière version de Boost en utilisant Homebrew .

brew install boost.


8
Combien de temps cela prend-il différentes personnes? Cela m'a pris 48 minutes avec 2 Go de RAM, je ne sais pas quel processeur.
Luke Stanley

5
@LukeStanley AFAIK Homebrew utilise des packages pré-compilés («bouteilles») pour Boost ces jours-ci, ce qui rend l'installation d'une question de secondes.
Philipp

8
Une question de secondes? Je suis sur Mountain Lion, processeur 2,9 GHz, 8 Go de RAM et l'installation n'est toujours pas terminée après 15 minutes.
user1255933

8
A pris environ une minute
rp.beltran

2
Salut, belle réponse! Et si je veux installer boost@1.58? Il n'y a pas de 1.58 disponible avec homebrew?
GoingMyWay

100

Récupérez simplement la source et compilez vous-même Boost; c'est devenu très facile. Voici un exemple de la version actuelle de Boost sur le macOS actuel au moment de la rédaction de cet article:

  1. Téléchargez le .tar.gz depuis https://www.boost.org/users/download/#live
  2. Décompressez et allez dans le répertoire:

    tar -xzf boost_1_50_0.tar.gz
    cd boost_1_50_0

  3. Configurer (et construire bjam):

    ./bootstrap.sh --prefix=/some/dir/you/would/like/to/prefix
  4. Construire:

    ./b2
  5. Installer:

    ./b2 install

Selon le préfixe que vous choisissez à l'étape 3, vous devrez peut-être sudo Étape 5, si le script tente de copier des fichiers vers un emplacement protégé.


3
Meilleur itinéraire si vous devez établir un lien avec boost_thread. Les recettes de bière standard ne semblent pas l'inclure.
Wedge Martin

Si vous souhaitez installer d'autres exécutables qui dépendent de boost dans l'environnement d'exécution par défaut, utilisez d'autres réponses, dans tous les autres cas, utilisez cette réponse. Il est préférable que vous sachiez quand vous compilez avec boost et comment. Vous l'aurez tel qu'il est censé être. Et le plus important, cela vous obligera à penser où le boost sera sur le serveur d'intégration continue (Build), et s'il a également un serveur de déploiement.
wdavilaneto

Pouvez-vous expliquer l'étape 3? @snies
MAS

@MAS (je ne l'ai pas essayé aujourd'hui. Mais bootstrap.sh devrait être fourni avec le fichier tar.gz. Il configure le processus de construction et crée l'outil de construction bjam. Le "préfixe" est une option courante pour les outils de construction qui seront préfixé au chemin d'installation. Cela signifie que si un fichier est installé dans / bin, il sera à la place installé dans / prefix / bin lorsque la commande d'installation est émise. Vous pouvez l'utiliser pour éviter les problèmes d'autorisation. Par exemple, j'installe en option paquets que j'utilise pour le développement dans / home / snies / opt / bin au lieu de / bin, donc je n'ai pas besoin d'autorisations root et ne
gâche

6

À moins que votre compilateur ne soit différent de celui fourni avec les outils Mac XCode Dev, suivez simplement les instructions de la section 5.1 du Guide de démarrage pour les variantes Unix . La configuration et la construction de la dernière source ne pouvaient pas être plus faciles, et il a fallu environ 1 minute pour configurer et 10 minutes pour compiler.


5

Mouchard semble avoir un ensemble complet de packages Boost ...

Avec Fink installé et en cours d'exécution, faites

fink install boost1.35.nopython

au terminal et acceptez les dépendances sur lesquelles il insiste. Ou utiliser

fink list boost

pour obtenir une liste des différents packages disponibles.


5

Installez les deux en utilisant homebrew séparément.

brew installer booster
brew installer bjam


5

Installez Xcode depuis le Mac App Store. Ensuite, utilisez la commande:

  /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

ce qui précède installera homebrew et vous permettra d'utiliser brew dans le terminal

puis utilisez simplement la commande:

brew install boost

qui installerait alors les bibliothèques boost sur <your macusername>/usr/local/Cellar/boost


4

Afin d'éviter les problèmes de compilation de bibliothèques tierces qui doivent être installées sur votre système, exécutez ceci:

sudo port install boost +universal

4

Essayer +universal

Une chose à noter: pour que cela fasse une différence, vous devez avoir construit pythonavec +universal, si vous ne l'avez pas fait ou si vous n'êtes pas sûr de pouvoir simplement reconstruire python +universal. Cela s'applique à la fois aux brasseries et aux macports .

$ brew reinstall python
$ brew install boost

OU

$ sudo port -f uninstall python
$ sudo port install python +universal
$ sudo port install boost +universal

3

vous pouvez télécharger bjam pour OSX (ou tout autre système d'exploitation) ici


Aucun indice de ce qu'est bjam et pourquoi vous pensez que votre réponse corrige le problème lié au boost.
Tõnu Samuel
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.