특정 버전을 어떻게 연결할 수 있습니까?


158

나는 동일한 패키지의 몇 통을 가지고 /usr/local/Cellar/libfoo같은 /usr/local/Cellar/libfoo/1.0.1, /usr/local/Cellar/libfoo/HEAD그리고/usr/local/Cellar/libfoo/mycopy

특정 버전에 대한 링크를 추출하려면 어떻게해야합니까?

답변:


310

사용법 정보 :

Usage: brew switch <formula> <version>

예:

brew switch mysql 5.5.29

로 시스템에 설치된 버전을 찾을 수 있습니다 info.

brew info mysql

brew가 사용 가능한 버전 번호로 도움을 줄 수 있으므로 설치 가능한 버전을 확인하기 위해 dud 버전 번호를 제공 할 수 있습니다.

brew switch mysql 0

업데이트 (15.10.2014) :

brew versions명령은 brew에서 제거되었지만이 명령을 사용하려면 먼저 run을 실행하십시오 brew tap homebrew/boneyard.

이전 버전을 설치하는 권장 방법 homebrew/versions은 다음과 같이 repo 에서 설치하는 것입니다 .

$ brew tap homebrew/versions
$ brew install mysql55

이전 버전의 수식을 설치하는 모든 방법에 대한 자세한 내용은 이 답변을 참조하십시오 .


1
나는 15.10.2014 업데이트 방법을 따르고 /usr/local/Cellar/mysql55/5.5.40/bin을 내 경로에 추가해야했습니다. 대부분의 Homebrew 항목은 / usr / local / bin에 / usr / local / Cellar ...에 대한 심볼릭 링크가 있지만 업데이트 된 설치는이 심볼릭 링크를 자동으로 추가하지 않습니다.
Powers

1
여전히 brew link --overwrite mysql55
Yann VR

2
불행하게도, brew tap homebrew/versions지금 나에게 오류를 제공 Error: homebrew/versions was deprecated. This tap is now empty as all its formulae were migrated`
유라이 마르틴

versions추측하거나 확인 하지 않고 사용 가능한 버전을 파악할 수있는 방법 이 switch있습니까?
Kyle Strand

1
버전은 더 이상 사용되지 않으므로 남아있는 유일한 방법은 오래된 공식을 찾아 직접 URL에서 설치하는 것입니다.
SimonW

12

#machomebrew에서 물었고 brew 스위치를 사용하여 버전 간을 전환 할 수 있다는 것을 배웠습니다.

$ brew switch libfoo mycopy 

libfoo의 버전 mycopy를 얻으려면.


4

brew switch libfoo mycopy

brew switch버전이 지정된 하위 디렉토리로 설치된 경우 동일한 패키지의 버전 간을 전환 하는 데 사용할 수 있습니다.Cellar/<packagename>/

설치된 버전이 표시됩니다 (예 :에 Cellar/sdl2/2.0.3컴파일했습니다 Cellar/sdl2/2.0.4).

brew info sdl2

그런 다음 그들 사이를 전환

brew switch sdl2 2.0.4
brew info 

*2.0.4 옆에 정보가 표시 됩니다

Cellar/<packagename>/<version>소스에서 설치하려면 예를 들어 할 수 있습니다

cd ~/somewhere/src/foo-2.0.4
./configure --prefix $(brew --Cellar)/foo/2.0.4
make

설치 위치 확인

make install -n

모든 것이 올바르게 보인다면

make install

그런 다음 cd $(brew --Cellar)버전 간 전환 을 수행하십시오.

나는 사용하고있다 brew version 0.9.5


3

예를 들어 php 5.4를 설치 한 경우 다음과 같은 방식으로 php 5.5로 전환 할 수 있습니다.

$ php --version
PHP 5.4.32 (cli) (built: Aug 26 2014 15:14:01) 
Copyright (c) 1997-2014 The PHP Group
Zend Engine v2.4.0, Copyright (c) 1998-2014 Zend Technologies

$ brew unlink php54

$ brew switch php55 5.5.16

$ php --version
PHP 5.5.16 (cli) (built: Sep  9 2014 14:27:18) 
Copyright (c) 1997-2014 The PHP Group
Zend Engine v2.5.0, Copyright (c) 1998-2014 Zend Technologies

0

@simon의 답변이 일부 Mac에서 작동하지 않으면 아래 프로세스를 따르십시오.

다음 명령을 사용하여 swiftgen을 이미 설치 한 경우 :

$ brew update $brew install swiftgen

이전 버전으로 swiftgen을 실행하려면 아래 단계를 따르십시오.

1 단계 : brew uninstall swiftgen 2 단계 : https://github.com/SwiftGen/SwiftGen/releases로 이동 하여 swiftgen-4.2.0.zip 버전의 swiftgen을 다운로드하십시오.

디렉토리에서 패키지를 압축 해제하십시오.

3 단계 : 터미널에서 다음을 실행하십시오.

$ mkdir -p ~/dependencies/swiftgen
$ cp -R ~/<your_directory_name>/swiftgen-4.2.0/ ~/dependencies/swiftgen
$ cd /usr/local/bin
$ ln -s ~/dependencies/swiftgen/bin/swiftgen swiftgen
$ mkdir ~/Library/Application\ Support/SwiftGen
$ ln -s ~/dependencies/swiftgen/templates/ ~/Library/Application\ Support/SwiftGen/

$ swiftgen --version

SwiftGen v0.0 (Stencil v0.8.0, StencilSwiftKit v1.0.0, SwiftGenKit v1.0.1)이 표시됩니다.

여기에 이미지 설명을 입력하십시오

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.