Como você instala o Boost no MacOS?


174

Como você instala o Boost no MacOS? No momento, não consigo encontrar o bjam para o Mac.


1
Você sempre pode tentar "pesquisa de porta <qualquer que seja>" - no seu caso, aumentar - quando não tiver certeza.
gustafbstrom

Eu usei macports e brew. Utilizo-os juntos quando necessário ( sudo port -t install X), mas na maioria dos casos prefiro fazer cerveja em vez de macports.
Jacksonkr

Respostas:


152

Faça o download do MacPorts e execute o seguinte comando:

sudo port install boost 

2
se preferir correr as coisas através de raiz sudo -s /opt/local/bin/port install boost
Pungs

2
Não acredito que o macports esteja morto na medida em que saiu de moda.
Josef Salyer

3
Que tal fazer brew install boost boost-python?
Ilciavo 6/01/15

Eu prefiro o macports do que o brew, com o brew qualquer um pode usar uma fórmula de merda e quebrar muitas bibliotecas.
precisa saber é o seguinte

1
Como isso é aceito na resposta do Homebrew? Isso não faz sentido para mim ...

262

Você pode obter a versão mais recente do Boost usando o Homebrew .

brew install boost.


8
Quanto tempo leva pessoas diferentes? Levei 48 minutos com 2 GB de RAM, não sei qual CPU.
Luke Stanley

5
@LukeStanley O AFAIK Homebrew usa pacotes pré-compilados ("garrafas") para o Boost atualmente, tornando a instalação em questão de segundos.
29413 Philipp

8
Questão de segundos? Estou no Mountain Lion, processador de 2,9 GHz, 8 GB de RAM e a instalação ainda não está concluída após 15 minutos.
User1255933 28/05

8
Demorou um minuto
rp.beltran

2
Oi, boa resposta! E se eu quiser instalar o boost@1.58? Não há 1,58 disponível com homebrew?
GoingMyWay 13/09

100

Basta obter a fonte e compilar Boost você mesmo; tornou-se muito fácil. Aqui está um exemplo da versão atual do Boost no macOS atual até o momento em que este artigo foi escrito:

  1. Faça o download do arquivo .tar.gz em https://www.boost.org/users/download/#live
  2. Descompacte e vá para o diretório:

    tar -xzf boost_1_50_0.tar.gz
    cd boost_1_50_0

  3. Configure (e construa bjam):

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

    ./b2
  5. Instalar:

    ./b2 install

Dependendo do prefixo escolhido na Etapa 3, pode ser necessário executar o sudo na Etapa 5, se o script tentar copiar arquivos para um local protegido.


3
Melhor rota se você precisar vincular ao boost_thread. As receitas padrão de cerveja não parecem incluí-lo.
Wedge Martin

Se você deseja instalar outros executáveis ​​que dependem do aumento no ambiente de tempo de execução padrão, ok, use outras respostas; em qualquer outro caso, use esta resposta. É melhor você saber quando você está compilando com impulso e como. Você terá como deve ser. E o mais importante: forçará você a pensar onde o aumento estará no servidor de Integração Contínua (Compilação) e se também possui um servidor de implantação.
Wdavilaneto

Você pode explicar o passo 3? @snies
MAS

@MAS (Eu não tentei hoje. Mas o bootstrap.sh deve vir com o arquivo tar.gz. Ele configura o processo de criação e cria a ferramenta bjam build. O "prefixo" é uma opção comum para ferramentas de construção que serão prefixado no caminho da instalação. Isso significa que, se um arquivo for instalado em / bin, ele será instalado em / prefix / bin quando o comando de instalação for emitido. Você pode usá-lo para evitar problemas de permissão. Por exemplo, eu instalo o opcional pacotes eu uso para o desenvolvimento em / home / snies / opt / bin ao invés de / bin, então eu não preciso de permissões de root e não atrapalhar meu sistema.
snies

6

A menos que seu compilador seja diferente daquele fornecido com as ferramentas de desenvolvimento do Mac XCode, basta seguir as instruções na seção 5.1 do Guia de introdução para variantes do Unix . A configuração e a criação da fonte mais recente não poderiam ser mais fáceis, e levou cerca de 1 minuto para configurar e 10 minutos para compilar.


5

O Fink parece ter um conjunto completo de pacotes Boost ...

Com o fink instalado e funcionando, basta

fink install boost1.35.nopython

no terminal e aceite as dependências em que ele insiste. Ou use

fink list boost

para obter uma lista dos diferentes pacotes disponíveis.


5

Instale os dois usando o homebrew separadamente.

brew instalar impulso
brew instalar bjam


5

Instale o Xcode na mac app store. Em seguida, use o comando:

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

o acima instalará o homebrew e permitirá que você use o brew no terminal

então basta usar o comando:

brew install boost

que instalaria as bibliotecas de impulso para <your macusername>/usr/local/Cellar/boost


4

Para evitar problemas na compilação de bibliotecas de terceiros que precisam de reforço instalado em seu sistema, execute o seguinte:

sudo port install boost +universal

4

Experimentar +universal

Uma coisa a nota: para que fazer a diferença que você precisa para ter construído pythoncom +universal, se você não tem ou você não tem certeza de que você pode apenas reconstruir python +universal. Isso se aplica tanto ao brew quanto ao macports .

$ brew reinstall python
$ brew install boost

OU

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

3

você pode baixar o bjam para OSX (ou qualquer outro sistema operacional) aqui


Não há dica do que é bjam e por que você acha que sua resposta corrige um problema relacionado ao aumento.
Tõnu Samuel
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.