MacPorts: त्रुटि के बाद अन्य अपडेट इंस्टॉल करना जारी रखें


12

कहें कि मेरे पास निम्नलिखित पुराने पैकेज हैं:

  • foo
  • बार
  • baz

मैं उन्हें अधिक से अधिक अपडेट करना चाहता हूं, इसलिए मैं चलाने की कोशिश करता हूं:

sudo port -n -f upgrade outdated

हालांकि इसके साथ विफल रहता है:

Error: org.macports.build for port foo returned: command execution failed
Please see the log file for port foo for details: ...

अगर मैं विफल रहता है तो मैं मैकपोर्ट को बार और बाज को अपग्रेड करने की कोशिश कैसे कर सकता हूं?

मैं आम तौर पर अन्य बंदरगाहों को स्थापित करने / अपग्रेड करने का प्रयास करना चाहता हूं यदि उनमें से कुछ को स्थापित / अपग्रेड करना विफल रहता है और बस जारी रहता है।


मैन पेज से:

 -f       force mode (ignore state file)

 

 -n       don't upgrade dependencies (affects upgrade and install)

संपादित करें: foo, bar & baz, 3 कुल असंबंधित पोर्ट हैं, जो किसी भी तरह से एक दूसरे पर निर्भर नहीं हैं।


संपादित करें 2: अगली बार जब मैं इसे चलाता हूँ तो पुराने पोर्ट्स f, bar & baz के बजाय a, b & c हो सकते हैं, इसलिए मैं विफल लोगों को हार्डकोड नहीं कर सकता और मैं बस नहीं कर सकता:

sudo port update foo
sudo port update bar
sudo port update baz

जवाबों:


8

-pमेरे लिए काम करने लगता है।

मैनपेज से:

-पी किसी भी त्रुटि का सामना करने के बावजूद, कई प्रक्रिया करने के लिए आगे बढ़ें
         बंदरगाहों और आदेशों।

लेकिन नीचे MacPorts देव से सावधानी देखें .... इस ध्वज का उपयोग करने की अनुशंसा नहीं की जाती है!
jvriesem

5

MacPorts देव यहां; आपके प्रश्न का सही उत्तर है: आप नहीं।

वहाँ एक कारण है कि MacPorts एक निर्भरता के निर्माण में विफल होने पर पैकेज को स्थापित करने का प्रयास नहीं करता है।

इस सटीक सवाल पर macports-users मेलिंग सूची पर इतनी देर पहले चर्चा नहीं की गई है:


1
फू, बार और बाज, 3 कुल असंबंधित बंदरगाह हैं, जो किसी भी तरह से एक दूसरे पर निर्भर नहीं हैं।
टायिलो

1
उस स्थिति में आप हमेशा उन्हें मैन्युअल रूप से अपडेट कर सकते हैं, यानी कि सूडो पोर्ट अपग्रेड बाज, सूडो पोर्ट अपग्रेड बार, सुडो पोर्ट अपग्रेड फू।
क्लेमेंस लैंग

प्रश्न में "2 संपादित करें" देखें।
टायिलो

यह सही जवाब होना चाहिए, अगर मैकपोर्ट्स देव से बात की जाए।
jvriesem

यह एक स्वीकार्य जवाब हो सकता है अगर MacPorts कुछ भी स्थिर नहीं होगा। दुर्भाग्य से, कई पैकेज बहुत सारे वैकल्पिक चीजों पर निर्भर करते हैं जो वास्तव में अधिकांश मामलों में आवश्यक नहीं होते हैं और बंदरगाहों का हर दूसरा अपग्रेड विफल हो जाता है क्योंकि मैकपोर्ट अस्थिर बकवास का एक गुच्छा है।
बच्चसू

5

आप अपग्रेड कमांड में "आउटडेटेड एंड नॉट फू" भी निर्दिष्ट कर सकते हैं, न कि केवल "आउटडेटेड"।


प्रश्न में "2 संपादित करें" देखें।
टायिलो

1

पुराने बंद टिकट को देखते हुए, एक दोष जो तय किया गया था:

333 (निर्भरता विफलता को नजरअंदाज कर दिया जाता है और पोर्ट जारी रखने और स्थापित करने की कोशिश करता है) - मैकपोर्ट्स

अगर मैं सही ढंग से समझता हूं: विफलता के बाद जारी रखने के लिए, कुछ मामलों में, दोषपूर्ण हो सकता है।

दूसरे शब्दों में:

  • इसे जारी रखना उचित (कम से कम जोखिम भरा) है ।

पोस्टस्क्रिप्ट: मैं अपनी संपूर्णता में मैन पेज को पढ़ने में बहुत आलसी था (टर्मिनल के हेल्प मेनू द्वारा नहीं मिला, लेकिन यह कोई दुरुपयोग नहीं है)। irc://irc.freenode.net/#macportsमैंने किसी से सलाह के बाद इस उत्तर को छोड़ने का फैसला किया।

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

मुझे कभी -pविकल्प का एहसास नहीं हुआ । थिलो को धन्यवाद।

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