मैं एक विशिष्ट संस्करण कैसे लिंक कर सकता हूं?


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 switch mysql 0

अपडेट (15.10.2014):

brew versionsआदेश काढ़ा से हटा दिया गया है, लेकिन, अगर आप इस आदेश को पहली बार चलाने उपयोग करना चाहते हैं brew tap homebrew/boneyard

एक पुराने संस्करण को स्थापित करने के लिए अनुशंसित तरीका homebrew/versionsरेपो से निम्नानुसार स्थापित करना है:

$ brew tap homebrew/versions
$ brew install mysql55

एक पुराने संस्करण को स्थापित करने के सभी तरीकों की विस्तृत जानकारी के लिए इस उत्तर को पढ़ें ।


1
मैंने 15.10.2014 अद्यतन विधि का पालन किया और अपने पथ पर /usr/local/Cellar/mysql55/5.5.40/bin जोड़ने की आवश्यकता थी। अधिकांश Homebrew सामान में / usr / लोकल / बिन से / usr / लोकल / सेलर ... का सिम्लिंक होता है, लेकिन अपडेटेड इंस्टॉलेशन में यह सिमिलिंक अपने आप नहीं जुड़ता है।
शक्तियां

1
आपको अभी भी इंस्टॉल किए गए संस्करण को लिंक करने और अपने वर्तमान लिंक को ओवरराइट करने की आवश्यकता है: काढ़ा लिंक --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?
काइल स्ट्रैंड

1
संस्करणों को पदावनत किया जाता है, इसलिए मुझे लगता है कि एक ही तरीका बचा है कि एक पुराना फॉर्मूला खोजा जाए और इसे एक डायरेक्ट URL से स्थापित किया जाए
सिमॉन

12

मैंने #machomebrew में पूछा और सीखा कि आप का उपयोग कर संस्करणों के बीच स्विच कर सकते हैं।

$ 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

अगर @ सिमोन का जवाब मैक के कुछ काम नहीं कर रहा है तो कृपया नीचे दी गई प्रक्रिया का पालन करें।

यदि आपने निम्नलिखित कमांड का उपयोग करके स्विफ्टजेन को पहले ही स्थापित कर लिया है:

$ brew update $brew install swiftgen

फिर पुराने संस्करण के साथ स्विफ्टजेन को चलाने के लिए नीचे दिए गए चरणों का पालन करें।

चरण 1: brew uninstall swiftgen चरण 2: पर जाएँ : https://github.com/SwiftGen/SwiftGen/releases और संस्करण के साथ स्विफ्टजेन डाउनलोड करें: स्विफ्टजेन-4.2.0.zip।

किसी भी निर्देशिका में पैकेज खोलना।

चरण 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 (स्टैंसिल v0.8.0, स्टैंसिलस्विफ्टकिट v1.0.0, SwiftGenKit v1.0.1)

यहां छवि विवरण दर्ज करें

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.