ओएस एक्स में एक स्व-निहित आर


2

मैं एक स्व-निहित आर इंस्टॉलेशन बनाने की कोशिश कर रहा हूं, जिसे मैं एक यूएसबी या आर्काइव पर रख सकता हूं और अपने सहयोगियों के साथ साझा कर सकता हूं जो अपने कंप्यूटर पर आर स्थापित करने की परेशानी में नहीं जाना चाहते हैं और मेरे पास सभी पैकेज हैं।

मैंने कुछ शोध किए और इन पदों को पाया:

मैंने अपने उबंटू बॉक्स पर 2 और 3 पोस्ट में समाधान करने की कोशिश की, make installएक कस्टम स्थान पर और फिर ए)। दूसरी पोस्ट या B के रूप में स्थापित बिन / आर को संपादित करने के लिए sed का उपयोग करना। तीसरे पोस्ट में सुझाव के अनुसार स्थापित बिन / आर की शुरुआत को संशोधित करना। उबंटू या अन्य लिनक्स पर यह मुझे एक फ़ोल्डर देता है जिसमें आर के बिन, लीब और शेयर फोल्डर की स्थापना होती है, जिसे स्व-निहित होना चाहिए और इसे यूएसबी पर और एक अलग उबंटू बॉक्स पर रखा जा सकता है।

मैं एक समान परिणाम प्राप्त करना चाहता हूं, लेकिन मेरे मैकबुक प्रो और ओएस एक्स के लिए। जब ​​आप ओएस एक्स के make installसाथ एक कस्टम स्थान पर आर करते हैं --prefix, तो आप लिनक्स में दिखाई देने वाले तीन बिन, लाइब, शेयर फ़ोल्डरों के बजाय, एक फ़ोल्डर है जिसे लीब कहा जाता है , और R.framework नामक कुछ। Lib फ़ोल्डर में pkgconfig नामक एक फ़ोल्डर होता है, जिसमें libR.pc. नामक फ़ाइल होती है। R.framework में कुछ सिम्लिंक्स और एक संस्करण निर्देशिका होती है। इस संस्करण निर्देशिका में करंट नामक एक सिमलिंक होता है, और फिर R के विभिन्न संस्करणों वाले फ़ोल्डरों की एक श्रृंखला होती है। इन वर्जन फोल्डरों में से प्रत्येक में हेडर नामक एक सिमलिंक होता है, जिसे PrivateHeaders कहा जाता है (हेडर फ़ाइलों का भार युक्त), और एक जिसे रिसोर्स कहा जाता है। अंत में इस संसाधन फ़ोल्डर में बिन स्रोत, शेयर, और इसी तरह के फ़ोल्डर जैसे R स्रोत फ़ोल्डर शामिल हैं।

मैं इस OS X संरचना से अपरिचित हूं। इसलिए मैं जानना चाहूंगा कि मुझे क्या करना होगा, अब मेरे पास make installओएस एक्स पर एक स्थानीय फ़ोल्डर में एड आर है? मुझे लगता है कि सिद्धांत रूप में यह लिनक्स के लिए फिक्स की तरह होना चाहिए - बिन / आर स्क्रिप्ट में पथों को संपादित करना R_ROOT_DIR। हालाँकि, मैं इन .framework चीजों से अपरिचित हूँ, Linux में आपके पास तीन निर्देशिकाओं के साथ एक स्थानीय फ़ोल्डर है और पथ को समझने और संपादित करने के लिए यह काफी सरल है।

किसी भी सलाह / समाधान बहुत सराहना की है!

धन्यवाद, बेन।


1
हो सकता है कि आप इसके बजाय डॉकर में देखना चाहते हैं?
डर्क एडल्डबुलेटेल

मैंने डॉकर पर विचार किया है, मैं इसके बारे में एक बड़ी राशि नहीं जानता - क्या यह ओएस एक्स के लिए काम करता है? मैंने सोचा कि यह एक लिनक्स कर्नेल तकनीक का उपयोग करता है। मेरे सहकर्मी मुझसे क्या पूछ रहे हैं, समाधान के लिए एक क्लिक में मेरी परियोजना है, जिसके लिए उन्हें अतिरिक्त सॉफ़्टवेयर (आर और इतने पर स्थापित करना) का उपयोग नहीं करना होगा। एक डॉकटर कंटेनर चलाने के लिए मुझे लगता है कि उन्हें इसकी आवश्यकता होगी?

हां, डॉकर OS2 और विंडोज पर बूट 2 डॉक करने के लिए धन्यवाद । डॉकर के लिए छवियों को रॉकर / रॉकर द्वारा हब पर प्रदान किया जाता है ।
डिर्क एडल्डबुलेटेल

Cran.r-project.org/doc/manuals/r-devel/R-admin.html#Frameworks पर एक नज़र डालें क्योंकि यह आपको OS X के लिए R बाइनरी का पोर्टेबल संस्करण बनाने में मदद कर सकता है।
hrbrmets

1
समान नहीं बल्कि समान ... कैक्टसलैब ImageMagick के लिए एक सरल इंस्टॉलर बनाते हैं (जो कि OSX पर स्थापित करने के लिए कठिन हो सकता है) ... एक नज़र cactuslab.com/imagemagick
मार्क सेटेक

जवाबों:


3

ऐसा लगता है जैसे कम से कम इसकी शुरुआत करना संभव है। R 3.2.1 स्रोतों को हथियाने और अनियंत्रित करने के बाद मैंने निम्नलिखित कार्य किए:

mkdir localinstall
./configure --prefix=`pwd`/localinstall \
            --without-tcltk \
            --with-cairo \
            --without-aqua \
            --without-x \
            --enable-R-shlib \
            --disable-R-framework

वेनिला OS X सिस्टम पर (VMware फ्यूजन के माध्यम से)। सिस्टम पर कोई अन्य आर इंस्टॉलेशन नहीं था।

इसे एक .appकॉन्फ़िगरेशन के साथ काम करने के लिए , bin/Rस्क्रिप्ट में पर्यावरण चर हैं जिन्हें आपको बदलना होगा।

R_HOME_DIR
R_SHARE_DIR
R_INCLUDE_DIR
R_DOC_DIR

Rscript कुछ ध्यान देने की आवश्यकता होगी (उस बाइनरी में डायर हार्डकोडेड हो जाता है) लेकिन आप इसे एक ऐप के पक्ष में काम करने के लिए सक्षम कर सकते हैं बशर्ते कि आपको अन्य सभी सहायता पैकेज मिलें जो आपका ऐप इंस्टॉल w / o समस्या का उपयोग करेगा।


1
मैंने ऐसा ही किया है - मेरे साथ ऐसा हुआ है कि कंपाइल बनाते हैं और काम करने वाले बायनेरिज़ बनाते हैं और इंस्टॉलेशन सिस्टम में सामान की जगह डालता है। इसलिए इस बार मैंने संकलित किया है make, लेकिन नहीं किया है make install, और फिर bin/Rपर्यावरण चर के साथ उल्लिखित हार्डकोड मार्गों को हटाने के लिए sed का उपयोग किया है । मेरा मानना ​​है कि जब तक आपके पास इसे चलाने से पहले पर्यावरण चर है, तब तक - यह मेरी मशीन पर ठीक काम करता है। मैं कल तक अन्य OS X मशीनों पर परीक्षण नहीं कर सकता।

1
सौभाग्य से, मेरा मानना ​​है कि अगर पर्यावरणीय चर निर्धारित किए जाते हैं तो रुपया वास्तव में डीआईआर को बदल देता है। मैंने कहीं पढ़ा है कि यह अच्छी तरह से प्रलेखित नहीं है कि यह ऐसा करता है, लेकिन उन्होंने स्रोत कोड पढ़ा और पाया कि ऐसा था।
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.