मेरी अपनी निर्देशिका में R स्थापित करें


34

मैं अपनी निर्देशिका में आर का एक नया संस्करण कैसे स्थापित कर सकता हूं, उदाहरण के लिए /local/data/project/behi


1
आप स्रोत से शुरू करके ऐसा करने में सक्षम हो सकते हैं; लेकिन अगर आपको पूछना है, तो मुझे लगता है कि यू ऐसा करने के लिए तैयार नहीं हैं। कृपया हमें बताएं कि आप किस सिस्टम को चला रहे हैं, और आप एक नए संस्करण में क्यों रुचि रखते हैं।
वॉनब्रांड

स्रोत कोड का उपयोग करके संस्करण विशिष्ट इंस्टॉलेशन YUM या APT का उपयोग करके इंस्टॉलेशन की तुलना में बहुत अलग है। यह ओएस संस्करण पर निर्भर करता है और स्थापना को सफलतापूर्वक पूरा करने के लिए निर्भरता की संख्या की आवश्यकता होती है। मैंने hashprompt.blogspot.com/2017/06/… में SLES11 SP3 पर R 3.3.3 की स्थापना को प्रलेखित किया है। आशा है कि यह आपको लिनक्स सिस्टम पर स्थापित करने में मदद कर सकता है।
बबन गैगोले

जवाबों:


43

ऐसा करने का सबसे आसान तरीका है आर को स्रोत से स्थापित करना :

$ wget http://cran.rstudio.com/src/base/R-3/R-3.4.1.tar.gz
$ tar xvf R-3.4.1.tar.gz
$ cd R-3.4.1
$ ./configure --prefix=$HOME/R
$ make && make install

दूसरा-से-अंतिम चरण महत्वपूर्ण है। यह R को आपके अपने घर निर्देशिका की उपनिर्देशिका में स्थापित करने के लिए कॉन्फ़िगर करता है।

लिनक्स, मैकओएस और समान सिस्टम पर इसे चलाने के $HOME/R/binलिए, अपने में जोड़ें PATH। फिर, शेल कमांड जैसे Rऔर Rscriptकाम करेगा।

MacOS पर, आपके पास एक और विकल्प है: इसे अपने उपयोगकर्ता के निजी फ़ोल्डर में बनाएँR.app और इंस्टॉल करें Applications। ऐसा करने के लिए आपको Xcode इंस्टॉल करना होगा।

आप --prefix=$HOMEइसके बदले देने पर विचार कर सकते हैं । यही कारण है कि इंस्टॉल किए जाने के लिए अपने घर निर्देशिका के शीर्ष स्तर पर आर, ताकि Rऔर Rscriptबाइनरी अंत में $HOME/bin, संभावना अपने उपयोगकर्ता की में पहले से ही है जो PATH। नकारात्मक पक्ष यह है कि यह बाद में अनइंस्टॉल करना कठिन बना देता है, क्योंकि R आपकी अन्य $HOMEसामग्री के बीच परस्पर क्रिया करेगा ।

(यदि यह आपके द्वारा इंस्टॉल की गई पहली चीज़ है $HOME/bin, तो आपको इसे प्राप्त करने के लिए लॉग आउट और वापस करना पड़ सकता है PATH, क्योंकि यह अक्सर सशर्त रूप से केवल तभी जोड़ा जाता $HOME/binहै जब लॉगिन समय पर मौजूद हो।)

यह सामान्य पैटर्न यूनिक्स सॉफ़्टवेयर की एक बड़ी मात्रा पर लागू होता है जिसे आप स्रोत कोड से इंस्टॉल कर सकते हैं। यदि सॉफ़्टवेयर में एक configureस्क्रिप्ट है, तो यह संभवतः --prefixविकल्प को समझता है , और यदि नहीं, तो आमतौर पर उसी प्रभाव के साथ कुछ विकल्प होता है।

ये विशेषताएं कई कारणों से आम हैं। संभावना के घटते क्रम में, मेरे अनुभव में:

  • सभी स्थितियों में सुरक्षित डिफ़ॉल्ट ( /usr/local) सही नहीं $prefixहै। परिस्थितियाँ कुछ और हुक्म हो सकता है इस तरह के रूप /usr, /opt/$PKGNAMEआदि

  • बाइनरी पैकेज बिल्डिंग सिस्टम ( RPM , DEB , PKG , Cygport ...) आमतौर पर पैकेज को एक विशेष स्टेजिंग डायरेक्टरी में बनाते और स्थापित करते हैं, फिर इसे इस तरह से पैक करते हैं कि यह वांछित इंस्टॉलेशन लोकेशन में फैलता है।

  • आपका मामला, जहां आपको rootसॉफ़्टवेयर को किसी विशिष्ट स्थान पर स्थापित करने के लिए नहीं मिल सकता है , इसलिए आप $HOMEइसके बजाय स्थापित करते हैं।


1
मैं ./configure --prefix=$HOME/R --enable-R-shlibयह सुनिश्चित करने की सलाह दूंगा कि आप R साझा लाइब्रेरी संकलित करें। अन्यथा, RStudio शिकायत करेगा।
akhmed

मुझे काम नहीं किया स्क्रिप्ट के साथ समाप्त हो गयाconfigure: error: --with-readline=yes (default) and headers/libs are not available make: *** No targets specified and no makefile found. Stop.
ApproachingDarknessFish

@ApproachingDarknessFish: इसका इस सवाल या मेरे जवाब से कोई लेना-देना नहीं है। आप अपने चुने हुए विकल्पों के साथ अपने सिस्टम पर R के निर्माण के लिए आवश्यक आवश्यक शर्तें याद कर रहे हैं। विशेष रूप से यहां, आप रीडलाइन डेवलपमेंट लाइब्रेरी को याद कर रहे हैं। यदि आपको अधिक समस्याएं हैं, तो एक नया प्रश्न पोस्ट करें।
वारेन यंग

8

आप रैपर एप्लिकेशन रेनव का भी उपयोग कर सकते हैं ।

अंश

सरल आर संस्करण प्रबंधन: रेनव

रेनव आपको आसानी से आर के कई संस्करणों के बीच स्विच करने देता है। यह सरल, विनीत है, और एकल उद्देश्य वाले टूल की UNIX परंपरा का पालन करता है जो एक काम अच्छी तरह से करते हैं।

रेनव करता है ...

  • आप प्रति उपयोगकर्ता के आधार पर वैश्विक आर संस्करण को बदलते हैं।
  • प्रति-प्रोजेक्ट R संस्करणों के लिए समर्थन प्रदान करें।
  • आपको एक पर्यावरण चर के साथ आर संस्करण को ओवरराइड करने की अनुमति दें।

1

स्रोत से बनाएँ ./configure --prefix=/local/data/project/behi ; make ; make install

यदि आप RPM पैकेज से इंस्टॉल कर रहे हैं और इसे स्थानांतरित करने योग्य बनाया गया है, तो आप उपयोग कर सकते हैं

rpm ... --prefix /local/data/project/behi

लेकिन सभी पैकेज रिलेकोटेबल बायनेरिज़ के साथ नहीं बनाए गए हैं, और मुझे नहीं लगता कि डेबियन पैकेजों में यह विकल्प है (हालांकि आप इसके साथ सफल हो सकते हैं dpkg --instdir)।

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